在我的程序中,我将浮点数打印到文件中。这些数字具有很高的精度,因此小数点后面有许多位数,例如0.0433896882981。如何减少我将其打印到文件中的数字位数?例如我要打印0.043而不是0.0433896882981。
>>> print '%.4f' % (2.2352341234)
2.2352
这里的%.4f
告诉Python将精度限制在小数点后四位。
你没有说明使用的是哪个版本,或者具体如何进行操作,因此我假设您正在使用3.x版本。
str.format("{0:.3f}", pi) # use 3 digits of precision and float-formatting.
格式说明符通常长这样:
[[填充字符]对齐方式][符号][#][0][最小宽度][.精度][类型]
其他示例:
>>> str.format("{0:" ">10.5f}", 3.14159265)
' 3.14159'
>>> str.format("{0:0>10.5f}", 3.14159265)
'0003.14159'
>>> str.format("{0:<10.5f}", 3.14159265)
'3.14159 '
str
方法:"{0:.3f}".format(pi)
。并且去掉分号! - Mark RansomIn [15]: n = 0.0433896882981
In [16]: print '%.3f' % n
产生以下结果:
0.043
% f
部分表示您要打印一个带有小数点的数字,.3
表示小数点后的数字位数。
其他示例:
In [17]: print '%.1f' % n
0.0
In [18]: print '%.2f' % n
0.04
In [19]: print '%.4f' % n
0.0434
In [20]: print '%.5f' % n
0.04339
.4
作为变量提供吗? - alper