编辑:我向你保证,当我通过 python 运行它时,一切都正确缩进。我认为问题与我如何调用 p._x 和 p._y 有关,但我不确定为什么?
这是一个我非常困难的问题。这没有任何意义。我必须通过程序检查器提交它,因此它会检查代码并确保其正确。如果它不正确,它会给出一个无用的错误报告。
好的,这就是我想要做的:我需要计算两个向量(x,y)之间的距离。
这是程序将运行的测试用例:
foo = Point(1,2)
bar = Point(3,4)
foo.dist_to_point(bar) = 2.8...
这是我的代码:
import math
class Point:
def __init__(self, x, y):
self._x = x
self._y = y
def dist_to_point(self, p):
a = self._x - p._x
b = self._y - p._y
c = math.sqrt(a**2+b**2)
return c
它不起作用。它给我的错误是“您正在尝试索引一个点对象。它们不是列表或元组 - 对于点对象 p 使用 p._x 和 p._y 访问所需的变量。
有任何想法吗?