在正数前添加加号?
我正在打印小数,保留小数点后3位数字。我想知道是否可以在正数前面加一个+符号,这样我就能得到
+0.005
表示正的变化,而
-0.005
表示负的变化。这样在printf里面能简单实现吗?
3 个回答
0
在我看来,一个更好的答案应该是...
>>> for number in [-42, 0, 1, +13]:
... print("%+d" % number if number != 0 else "0")
...
-42
0
+1
+13
>>>
或者简单来说...
>>> number = 13
>>> number_str = "%+d" % number if number != 0 else "0"
>>> print(number_str)
+13
>>>
额外提示:如果你想把一个整数的符号反转...
>>> number = -13
>>> number_str = "%+d" % -number if number != 0 else "0"
>>> print(number_str)
+13
>>>
谢谢!
6
数字有一个 +
的修饰符。比如说,"%+d" 或 "%+f"。
20
没错,只需要在格式说明符中加一个'+'就可以了。
例如:
>>> "{0:+.03f}".format(1.23456)
'+1.235'