如何在 Python 中的字符串中的数字前面添加“+”号?
Posted
技术标签:
【中文标题】如何在 Python 中的字符串中的数字前面添加“+”号?【英文标题】:How to add a '+' sign in front of a number in a string in Python? 【发布时间】:2021-01-31 13:57:51 【问题描述】:该程序获取成绩列表中数字的差异,并将它们与相应的班级配对。
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'\nc.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,我发现的唯一示例是人们在整数的开头添加加号。在我的情况下,我也不能在程序的开头添加符号(我不认为),因为我减去了成绩列表中数字的浮点值等等。
【问题讨论】:
【参考方案1】:您可以将格式字符串:.1f
替换为:+.1f
,它始终显示符号。
【讨论】:
只需:+
即可。【参考方案2】:
您是否尝试过循环遍历并将它们全部设为字符串,并在 int 为正数时添加加号。
【讨论】:
【参考方案3】:像这样替换格式::+.1f 或像这样连接一个+:'+' + ...
【讨论】:
以上是关于如何在 Python 中的字符串中的数字前面添加“+”号?的主要内容,如果未能解决你的问题,请参考以下文章