如何在Python中打印+1,如+1(带加号)而不是1?

时间:2011-12-01 05:37:01

标签: python number-formatting

如标题中所述,我如何让Python打印+1而不是1?

score = +1
print score
>> 1

我知道-1打印为-1,但是我怎么能得到正值才能用+号打印而不用手动添加它。

谢谢。

4 个答案:

答案 0 :(得分:54)

使用the % operator

print '%+d' % score

使用str.format

print '{0:+d}'.format(score)

您可以看到格式化迷你语言here的文档。

答案 1 :(得分:6)

对于python>=3.8+

score = 0.2724
print(f'{score:+d}')
# prints -> +0.2724

百分比

score = 27.2425
print(f'{score:+.2%}')
# prints -> +27.24%

答案 2 :(得分:4)

如果你只想显示负分的负号,零分没有加/减,所有正分都有加号:

score = lambda i: ("+" if i > 0 else "") + str(i)

score(-1) # '-1'
score(0) # '0'
score(1) # '+1'

答案 3 :(得分:-3)

score = 1
print "+"+str(score)

关于python解释器

>>> score = 1
>>> print "+"+str(score)
+1
>>>