a.设计一个 Point 类(点类),它包含数据成员有横坐标 x 和纵坐标 y;成员 方法包括构造方法,获取成员的方法有 get_x 和 get_y,设置 x 和 y 的方法 set_x 和 set_y。 b.为(a)中 Point 类设计__str__特殊方法程序,以实现当 p1 为 Point(x1, y1) 2 / 2 的实例化对象时,print(p1)将输出形如:Point(x1, y1) 的格式,其中,x1, y1 为数字。
时间: 2024-03-16 14:43:37 浏览: 94
好的,下面是 Point 类的设计,包括构造方法、获取成员方法和设置成员方法,以及 __str__ 特殊方法:
```python
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
def get_x(self):
return self.x
def get_y(self):
return self.y
def set_x(self, x):
self.x = x
def set_y(self, y):
self.y = y
def __str__(self):
return "Point({}, {})".format(self.x, self.y)
```
在这个类中,我们定义了两个数据成员 `x` 和 `y` 分别表示横坐标和纵坐标。构造方法 `__init__` 接收两个参数 `x` 和 `y`,并分别将它们赋值给 `x` 和 `y`。`get_x` 和 `get_y` 方法分别用于获取横坐标和纵坐标的值,而 `set_x` 和 `set_y` 方法则用于修改横坐标和纵坐标的值。注意,这里我们使用了小写字母来表示数据成员,这是一种常用的命名约定。
同时,我们还添加了 __str__ 特殊方法,以实现 print(p1) 的输出格式。该方法返回一个字符串,其中包含用小括号括起来的横坐标和纵坐标的值,中间用逗号隔开。
阅读全文