4、设计一个二维坐标轴中的位置点类Point,并实现对该类对象之间的加法、减法以及该对象与一个整数的乘法和除法运算。
时间: 2024-02-11 14:08:07 浏览: 34
好的,我可以为你设计一个二维坐标轴中的位置点类Point,并实现对该类对象之间的加法、减法以及该对象与一个整数的乘法和除法运算。以下是代码实现:
```python
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
def __add__(self, other):
return Point(self.x + other.x, self.y + other.y)
def __sub__(self, other):
return Point(self.x - other.x, self.y - other.y)
def __mul__(self, other):
return Point(self.x * other, self.y * other)
def __truediv__(self, other):
return Point(self.x / other, self.y / other)
```
这个类中有一个构造函数`__init__`,用于初始化对象的坐标。它还包含了四个方法,分别是加法`__add__`、减法`__sub__`、乘法`__mul__`和除法`__truediv__`,用于实现对象之间的加减和对象与整数之间的乘除运算。
例如,可以使用如下代码创建两个Point对象,并对它们进行加减和乘除运算:
```python
p1 = Point(1, 2)
p2 = Point(3, 4)
# 加法运算
p3 = p1 + p2
# 结果为(4, 6)
print(p3.x, p3.y)
# 减法运算
p4 = p2 - p1
# 结果为(2, 2)
print(p4.x, p4.y)
# 乘法运算
p5 = p1 * 2
# 结果为(2, 4)
print(p5.x, p5.y)
# 除法运算
p6 = p2 / 2
# 结果为(1.5, 2.0)
print(p6.x, p6.y)
```
希望这个代码能够满足你的需求。如果你还有其他问题,请继续提出。