我有一个像1.0e-4,1.0e-10,1.5e-12的数字。我想把这些数字写入丢弃小数后的数字的文件,如1e-4,1e-10,1e-12。 %g似乎对第二个数字有所帮助,但它有大于5的指数限制。我想要1e + 00,即使是1.0。对于1.0e-4,我得到1.000000e-04,%e和str()。
答案 0 :(得分:0)
使用"%.0g" % 1.5e-12
如果您想更改1.5e-12
,您可以随时使用变量
"%.0g" % 1.5e-12
提供'2e-12'
"%.0g" % 1.0e-4
提供'0.0001'
为了能够使用任意数量的指数,请使用:
from decimal import *
'%.1e' % Decimal("%.0g" % 1.5e-12)
使用此代码:
'%.1e' % Decimal("%.0g" % 1.5e-12)
提供'2.0e-12'
'%.1e' % Decimal("%.0g" % 1.0e-4)
提供'1.0e-04'
修改强>
使用:
from decimal import *
'%.0e' % Decimal("%.0g" % 1.5e-12)
2e-12
而不是2.0e-12