将Python浮点数以单精度形式打印
在Python 3中,如果你像这样打印一个浮点变量:
str(1318516946165810000000000.123123123)
输出结果是:
1.31851694616581e+24
有没有简单的方法可以在标准库中(不是Numpy)以32位浮点精度打印相同的内容?(或者更一般地说,任何精度都可以)
要注意,精度和小数位数是不同的,就像在Decimal中那样。
编辑
结果应该是一个字符串,像str那样,但要限制精度,比如:
32位浮点数的表示:1.31851e+24
1 个回答
1
我可能理解错了,但你问的是否是用format
加上合适的精度修饰符呢?
>>> "{0:6g}".format(1.31851694616581e24)
'1.31852e+24'
把6
改成你想要的数字,这样就可以控制有效数字的个数了。