【发布时间】:2017-04-25 08:44:52
【问题描述】:
def distance(alist, blist):
sum_of = 0
for x in alist:
for y in blist:
ans = (x - y)**2
sum_of += ans
return (sum_of)**(1/2)
print(distance([1, 1, 3], [2, 2, 3])) #1.4142135623730951
print(distance([1, 2, 3], [2, 2, 3])) #1.0
print(distance([2, 2, 3], [2, 2, 3])) #0.0
print(distance([1, 1], [2, 2])) #1.4142135623730951
所以我有一组测试用例,它们给了我两个带数字的列表。我的任务是用给定的列表计算欧几里得距离。但是,我没有得到正确的结果。相反,我得到了 3.7416573867739413、3.0、2.0 和 2.0。这是我到目前为止所拥有的,我不确定我做错了什么。
【问题讨论】: