1
以下のコードPythonのエラー:バインドされていないメソッドの距離(最初の引数は、(代わりにclassobjインスタンスを得た)のような)ポイントインスタンスで呼び出されなければならない
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
def distance(self,x1,y1,x2,y2):
d = math.sqrt(((x2 - x1) ** 2) + ((y2 - y1) ** 2))
print ("Distance between the points is " + "%0.6f" % d)
return d
def main():
x = float(input("Enter x coordinate of first circle's centre: "))
y = float(input("Enter y coordinate of the first circle's centre: "))
r = float(input("Enter first circle's radius: "))
pointx1 = x
pointy1 = y
first_circle = circle(x, y, r)
print(first_circle)
x = float(input("\nEnter x coordinate of second circle's centre: "))
y = float(input("Enter y coordinate of the second circle's centre: "))
r = float(input("Enter second circle's radius: "))
pointx2 = x
pointy2 = y
second_circle = circle(x, y, r)
Point.distance(Point,pointx1, pointy1, pointx2, pointy2)
を実行する上で、私は次のエラーを取得する:
File "C:/Users/Deepak/PycharmProjects/Submission/Shapes.py",line 102,in main
Point.distance(Point,pointx1, pointy1, pointx2, pointy2)
TypeError: unbound method distance() must be called with Point instance as
first argument (got classobj instance instead)
私は、ユーザーから2つの円の中心座標と半径を読み取ろうとしています。次に、それらの中心間の距離を調べようとしています。Point.distance()に4つのパラメーターだけを送信しようとしましたが、助けてください。このエラーを解決するにはどうすればよいですか?