Python 用浮点除法代替整数除法

Python 用浮点除法代替整数除法,python,python-2.7,Python,Python 2.7,当我这样做时: >>> x = 1 >>> y = 4 >>> x/y 0 它返回0而不是0.25,因为我没有将x或y声明为浮点。但即使我这样做了: >>> x = 0.0 >>> x = 1 >>> y = 4 >>> x/y 0 它仍然返回0 如何在不使用floatx/floaty的情况下对整数x和y执行浮点除法?您可以: from __future__ impo

当我这样做时:

>>> x = 1
>>> y = 4
>>> x/y
0
它返回0而不是0.25,因为我没有将x或y声明为浮点。但即使我这样做了:

>>> x = 0.0
>>> x = 1
>>> y = 4
>>> x/y
0
它仍然返回0

如何在不使用floatx/floaty的情况下对整数x和y执行浮点除法?

您可以:

from __future__ import division
在模块的顶部。这将使/运算符在默认情况下的行为与执行浮点除法类似;如果仍然需要楼层分割,可以使用//运算符。

您可以放置:

from __future__ import division

在模块的顶部。这将使/运算符在默认情况下的行为与执行浮点除法类似;如果仍然需要楼层分割,可以使用//运算符。

即使在返回0之前我先输入x=0.0,它也会给你一个0,因为如果输入x=0.0而不是x=1.0.0.0/对于所有python实现,某些值都会导致浮点数0.0。通常在这些情况下,我建议您从uuu future uuuuu导入除法,但很难判断这是否适用于这里……如果您编写x=0.0,然后x=1,x将是int而不是float。此外,在python中,您不声明variablesWorth注意:只有一个变量需要是float才能执行浮点除法。1. / 4和1/4。即使在他再次返回0之前,我把x=0.0,它也会给你一个0,因为你把x=0.0而不是x=1.0.0.0/对于所有的python实现,一些_数都会导致浮点数0.0。通常在这些情况下,我建议您从uuu future uuuuu导入除法,但很难判断这是否适用于这里……如果您编写x=0.0,然后x=1,x将是int而不是float。此外,在python中,您不声明variablesWorth注意:只有一个变量需要是float才能执行浮点除法。1. / 4和1/4。都会产生0.25。谢谢你,这解决了我的问题:谢谢你,这解决了我的问题: