如何避免python中的e-05

如何避免python中的e-05,python,int,decimal,Python,Int,Decimal,我有一个Python程序,其中我计算了一些概率,但在一些答案中我得到了f.ex。8208e-06,但我想把我的数字写在0.000008的常规表格上。。。我该怎么做 您可以使用f格式说明符并指定小数位数: >>> '{:.10f}'.format(1e-10) '0.0000000001' 精度默认为6,因此: >>> '{:f}'.format(1e-6) '0.000001' >>> '{:f}'.format(1e-7) '0.0000

我有一个Python程序,其中我计算了一些概率,但在一些答案中我得到了f.ex。8208e-06,但我想把我的数字写在0.000008的常规表格上。。。我该怎么做

您可以使用
f
格式说明符并指定小数位数:

>>> '{:.10f}'.format(1e-10)
'0.0000000001'
精度默认为
6
,因此:

>>> '{:f}'.format(1e-6)
'0.000001'
>>> '{:f}'.format(1e-7)
'0.000000'

如果要删除尾随零,请仅删除它们:


默认情况下,当使用
str
(或
repr
)转换为字符串时,python会返回给定浮点的最短可能表示形式,可能是指数表示法

这通常是您想要的,因为十进制表示可能会显示应用程序用户通常不希望也不想看到的表示错误:

>>> '{:.16f}'.format(1.1)
'1.1000000000000001'
>>> 1.1
1.1

你说出来是什么意思?你打印出来的格式出乎意料吗?嗯,是的。格式如8208e-06所述,但我需要以“标准格式”编写。这是可能的吗?可能的副本谢谢你,工作完美!:)非常感谢:)
>>> '{:.16f}'.format(1.1)
'1.1000000000000001'
>>> 1.1
1.1