0

看看这段代码:

>>> print "var: %g" % 3.12345678
var: 3.12346
>>> print "var: %G" % 3.12345678
var: 3.12346
>>> print "var: %e" % 3.12345678
var: 3.123457e+00
>>> print "var: %E" % 3.123456
var: 3.123457E+00

为什么不显示所有数字?

为什么 6 会从科学记数法中删除?

4

2 回答 2

1

使用%.nf其中 n 是 sig-figs 的数量

print 'var: %.10f' % 3.12345678
# outputs: "var: 3.1234567800"

print 'var: %.10E' % 3.12345678
# outputs: "var: 3.1234567800E+00"

print 'var:', 3.12345678
# outputs: "var: 3.12345678"
于 2013-10-11T02:32:12.140 回答
0

见:http%g ://docs.python.org/2/library/stdtypes.html and 的默认精度%G是6,所以它只输出6位数字(截断)。

对于指数格式,默认精度是小数点后 6 位,并且四舍五入(到 3.123457)

于 2013-10-11T02:34:21.033 回答