如何在 Python 中的字符串中的数字前添加“+”号?

How to add a '+' sign in front of a number in a string in Python?

此程序获取成绩列表中数字的差异并将它们与相应的 类.

配对
classlist = ['CLASS1', 'CLASS2', 'CLASS3', 'CLASS4', 'CLASS5', 'CLASS6', 'CLASS7']
gradelist1 = ['91', '--', '95', '0']
gradelist2 = ['90', '80', '98', '96']

def gradeChangeShow():
    difference = []
    gradelist1_change = [g.replace('--', '0.0') for g in gradelist1]
    gradelist2_change = [g.replace('--', '0.0') for g in gradelist2]
    for i in range(len(gradelist1)):
        difference = ["{:.1f}".format(float(a) - float(b)) for a, b in zip(gradelist2_change, gradelist1_change)]
    statement = [f'\n{c.rstrip()}: {d}' for c, d in zip(classlist, difference) if float(d) != 0.0]
    #maybe something here
    comma_delete = ','.join(statement)
    if difference:
        return comma_delete.replace(',', '')
    else:
        return ('\nNo grade changes.')
        
print(gradeChangeShow())

我的问题是,如何获得如下所示的输出:

CLASS1: -1.0
CLASS2: 80.0
CLASS3: 3.0
CLASS4: 96.0

为此:

CLASS1: -1.0
CLASS2: +80.0
CLASS3: +3.0
CLASS4: +96.0

我搜索了 Stack Overflow,我找到的唯一例子是人们在整数的开头添加了加号。在我的例子中,我也不能在程序的开头添加符号(我不认为),因为我减去了成绩列表中数字的浮点值等。

您可以将格式字符串 {:.1f} 替换为 {:+.1f},它始终显示符号。

您是否尝试过循环并使它们全部为字符串,如果 int 为正则添加一个加号。

像这样替换格式:{:+.1f} 或像这样连接 +:'+' + ...