我有一个简单的问题,我认为应该有一个简单的解决方案。如何格式化浮点数,以便只显示小数点后面的数字?我更愿意使用'{}'。format来完成此任务。
>>> n = 0.12345
>>> n
0.12345
>>> str(n)[1:]
'.12345'
>>> '{}'.format(n)
'0.12345'
>>> '{}'.format(str(n)[1:])
'.12345'
我知道我可以使用str(n)[1:],但我不想将数字转换为字符串。
答案 0 :(得分:4)
我认为没有一个格式字符串可以删除零。但是,您可以使用lstrip
:
In [25]: n = 0.12345
In [26]: '{:.3f}'.format(n).lstrip('0')
Out[26]: '.123'
至少比str(n)[1:]
更安全,如果n
等于大于1或小于-1的数字,则会删除一个有意义的数字。