在我的代码中:
class Vector(object):
@staticmethod
def distance(vector1, vector2):
return math.sqrt((vector2[0]-vector1[0])^2+(vector2[1]-vector1[1])^2)
Run Code Online (Sandbox Code Playgroud)
有时,看似随机,我在调用此方法时遇到ValueError:math域错误.有什么问题?谢谢.
ken*_*ytm 15
return math.sqrt((vector2[0]-vector1[0])**2+(vector2[1]-vector1[1])**2)
Run Code Online (Sandbox Code Playgroud)
在Python和许多其他C语言中,^
代表bitwise-xor,它可能会产生负数,从而导致"数学域错误".
BTW,整个操作可以被计算的math.hypot
功能.
return math.hypot(vector2[0]-vector1[0], vector2[1]-vector1[1])
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2729 次 |
最近记录: |