一尘不染

在Python中格式化浮点数时不尾随零

python

如何格式化浮点数,使其不包含尾随零?换句话说,我希望结果字符串尽可能短。

例如:

3 -> "3"
3. -> "3"
3.0 -> "3"
3.1 -> "3.1"
3.14 -> "3.14"
3.140 -> "3.14"

阅读 488

收藏
2020-02-19

共2个答案

一尘不染

你可以%g用来实现以下目的:

'%g'%(3.140)

或者,对于Python 2.6或更高版本:

'{0:g}'.format(3.140)
2020-02-19
一尘不染

('%f' % x).rstrip('0').rstrip('.')-保证定点格式,而不是科学记数法,还不如光滑和优雅的%g,但是,它的工作原理(我不知道如何强制%g从不使用科学记数法;

2020-02-19