2011-12-01 53 views

回答

42

随着the % operator

print '%+d' % score 

随着str.format

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

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

+1

谢谢你的工作,你能解释它背后的格式化逻辑,所以我可以学习它而不是记住它吗?谢谢。 –

+3

@Capriano:'+'表示如果数字是正数(或者负数是-'-'),则该数字应该以“+”开始格式化。 'd'表示该数字应该用十进制表示(十进制)。 – icktoofay

+0

只是想知道@icktoofay现在被认为是一个浮点/双? (我知道在c%d中是指int变量 –

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

关于Python解释器

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

这个问题说“没有添加它在手动我自己“ – icktoofay

+0

我的坏,没有读过最后一部分:( – Ani

+1

谢谢ani但是,因为冰解释我需要python为我做,而不是手动添加吨。 –

2

如果你只想显示为负评分,没有加负号/负零得分和一个加号对所有正评分:

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

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