gpt4 book ai didi

python - 在 Python 中创建一个点类

转载 作者:行者123 更新时间:2023-11-28 19:50:20 28 4
gpt4 key购买 nike

我正在尝试用 Python 创建一个名为“Point”的类。我正在尝试在坐标平面 x 和 y 上创建一个点并跟踪它们。以及找到点之间的距离。我必须使用函数和方法。我已经开始了,这是我的代码。我只是不确定在执行程序时如何使用它。任何帮助将不胜感激。

编辑:更新代码

import math


class Point(object):
'''Creates a point on a coordinate plane with values x and y.'''

COUNT = 0

def __init__(self, x, y):
'''Defines x and y variables'''
self.X = x
self.Y = y

def move(self, dx, dy):
'''Determines where x and y move'''
self.X = self.X + dx
self.Y = self.Y + dy

def __str__(self):
return "Point(%s,%s)"%(self.X, self.Y)


def getX(self):
return self.X

def getY(self):
return self.Y

def distance(self, other):
dx = self.X - other.X
dy = self.Y - other.Y
return math.sqrt(dx**2 + dy**2)

def testPoint(x=0,y=0):
'''Returns a point and distance'''
p1 = Point(3, 4)
print p1
p2 = Point(3,0)
print p2
return math.hypot(dx, dy)

print "distance = %s"%(testPoint())

我仍然需要帮助来理解如何实际使用代码。这就是我创建 testPoint 函数的原因。当我真正去执行IDLE中的代码时,我如何证明一切正常?谢谢大家!

我还需要向构造函数中添加代码,以便在每次创建 Point 对象时将 COUNT 递增 1。我还需要添加适当的代码,以便可以使用比较运算符比较点,同时根据它们与原点的距离来比较“点”。

最佳答案

不要忘记 math.hypot

def distance(self, p):
dx = self.X - p.X
dy = self.Y - p.Y
return hypot(dx, dy)

关于python - 在 Python 中创建一个点类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12468900/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com