如何在 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} 或像这样连接 +:'+' + ...
此程序获取成绩列表中数字的差异并将它们与相应的 类.
配对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} 或像这样连接 +:'+' + ...