我有两个整数值a和b,但我需要它们在浮点数中的比值。我知道a < b,我想计算a / b,所以如果我用整数除法,我总是得到0,余数是a。
如何在以下Python 2中强制c为浮点数?
c = a / b
在3。X,行为是相反的;参见为什么整数除法产生一个浮点数而不是另一个整数?反之为3。x-specific问题。
我有两个整数值a和b,但我需要它们在浮点数中的比值。我知道a < b,我想计算a / b,所以如果我用整数除法,我总是得到0,余数是a。
如何在以下Python 2中强制c为浮点数?
c = a / b
在3。X,行为是相反的;参见为什么整数除法产生一个浮点数而不是另一个整数?反之为3。x-specific问题。
当前回答
添加一个点(.)表示浮点数
>>> 4/3.
1.3333333333333333
其他回答
这个也可以
>>> u=1./5
>>> print u
0.2
在python2中,两个整型的除法得到一个整型。在Python 3中,它产生一个浮点数。我们可以通过从__future__导入来获得新的行为。
>>> from __future__ import division
>>> a = 4
>>> b = 6
>>> c = a / b
>>> c
0.66666666666666663
添加一个点(.)表示浮点数
>>> 4/3.
1.3333333333333333
你可以用c = a / float(b)来转换为float。如果分子或分母是浮点数,则结果为also。
警告:正如评论者指出的那样,如果b不是整数或浮点数(或表示浮点数的字符串),这将不起作用。如果你可能要处理其他类型(比如复数),你需要检查或者使用不同的方法。
from operator import truediv
c = truediv(a, b)