将python float打印为单精度浮点数

时间:2014-08-12 19:56:30

标签: python python-3.x

在Python 3中打印浮点变量时,如下所示:

str(1318516946165810000000000.123123123)

输出结果为:

1.31851694616581e+24

标准的lib(不是Numpy)中是否有一种简单的方法可以只用32位浮点精度打印相同的东西? (或更一般的任何精度)

注意精度!=位置,如十进制

修改

结果应该是一个类似于str的字符串,但具有有限的精度,例如: 上面浮点数的32位表示:

1.31851e+24

1 个答案:

答案 0 :(得分:1)

我可能误解了,但是你正在使用format和你想要的合适的精度修正器吗?

>>> "{0:6g}".format(1.31851694616581e24)
'1.31852e+24'

更改6以控制有效数字