用python设计一个三维向量类(Vector),包含x, y, z三个坐标,默认为0。请通过重载操作符的形式实现简单的向量加法和减法。 按照样例输入两个三维向量的坐标值,求两者相加与相减的结果并格式化输出。
时间: 2024-03-12 18:44:44 浏览: 31
好的,我可以为您演示如何实现这个向量类,以下是代码实现:
```python
class Vector:
def __init__(self, x=0, y=0, z=0):
self.x = x
self.y = y
self.z = z
def __add__(self, other):
return Vector(self.x + other.x, self.y + other.y, self.z + other.z)
def __sub__(self, other):
return Vector(self.x - other.x, self.y - other.y, self.z - other.z)
def __str__(self):
return "({}, {}, {})".format(self.x, self.y, self.z)
# 测试代码
v1 = Vector(1, 2, 3)
v2 = Vector(4, 5, 6)
v3 = v1 + v2
v4 = v2 - v1
print("v1 = ", v1)
print("v2 = ", v2)
print("v1 + v2 = ", v3)
print("v2 - v1 = ", v4)
```
输出结果为:
```
v1 = (1, 2, 3)
v2 = (4, 5, 6)
v1 + v2 = (5, 7, 9)
v2 - v1 = (3, 3, 3)
```
以上就是一个简单的三维向量类的实现,通过重载运算符实现了向量的加法和减法,方便用户进行向量运算。