我必须用1/50000
. 当我做
float(1/50000)
在 python 中它只返回我0.0
。如何在 python 中获得 powers 的实际值?我想得到2.5*10^(-5)
。
我必须用1/50000
. 当我做
float(1/50000)
在 python 中它只返回我0.0
。如何在 python 中获得 powers 的实际值?我想得到2.5*10^(-5)
。
In [2]: 1.0/50000
Out[2]: 2e-05
注意.0
. 它确保1.0
是浮点文字而不是整数文字。
另一种写法如下:
In [3]: float(1)/50000
Out[3]: 2e-05
您现在拥有的首先使用整数除法来计算1/50000
. 此除法的结果是整数0
,然后将其转换为浮点值 ( 0.0
)。
最后,请注意,您当前的代码将在 Python 3 中正常运行(并且float()
是多余的)。这是由于PEP 238。
使用 python 3.x
>>> 1/50000
2e-05
或在 python 2.x 上
>>> from __future__ import division
使用1.0/50000
或float(1)/50000
。你这样做的方式,当你转换为浮点数时,除法已经完成,获得额外的准确性为时已晚。
输入参数必须是浮点数才能划分为浮点数:
float(1) / float(50000)
或者
1./50000
十进制将 1 转换为浮点数。如果输入值之一是浮点数,则除法运算也将变为浮点数。
您所做的是将整数除以得到 0,然后将 0 转换为浮点数作为“0.0”。
只需将其中一个参数转换为float:
>>> 1 / float(50000)
2e-05