ane*_*yzm 7 python division python-2.x
我在Python中有一个奇怪的问题:除法没有正确执行:
print pointB[1]
print pointA[1]
print pointB[0]
print pointA[0]
print (pointB[1]-pointA[1]) / (pointB[0]-pointA[0])
Run Code Online (Sandbox Code Playgroud)
这些是结果:
100
50
100
40
0
Run Code Online (Sandbox Code Playgroud)
谢谢
use*_*312 18
以上行为适用于Python 2. /在Python 3中修复了行为.在Python 2中,您可以使用:
from __future__ import division
Run Code Online (Sandbox Code Playgroud)
然后/用来获得你想要的结果.
>>> 5 / 2
2
>>> from __future__ import division
>>> 5 / 2
2.5
Run Code Online (Sandbox Code Playgroud)
由于您要分割两个整数,因此您将得到整数结果.
或者,将其中一个数字更改为a float.
>>> 5.0 / 2
2.5
Run Code Online (Sandbox Code Playgroud)
它做得很好.
50/60 = 0
也许您正在寻找50.0/60.0 = 0.83333333333333337,您可以将变量转换为float来获取:
print float(pointB[1]-pointA[1]) / (pointB[0]-pointA[0])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5883 次 |
| 最近记录: |