用Python设计并且实现复数类
时间: 2023-11-29 07:03:56 浏览: 196
复数(complex number)是由实数和虚数相加得到的数。在 Python 中,可以使用 `complex` 类型来表示复数,它的实部和虚部都是浮点数。
如果需要自定义复数类,可以通过定义一个类来实现。下面是一个简单的复数类的示例:
```python
class ComplexNumber:
def __init__(self, real=0, imag=0):
self.real = real
self.imag = imag
def __str__(self):
if self.imag < 0:
return f"{self.real}{self.imag}j"
else:
return f"{self.real}+{self.imag}j"
def __add__(self, other):
return ComplexNumber(self.real + other.real, self.imag + other.imag)
def __sub__(self, other):
return ComplexNumber(self.real - other.real, self.imag - other.imag)
def __mul__(self, other):
return ComplexNumber(self.real * other.real - self.imag * other.imag,
self.imag * other.real + self.real * other.imag)
def __truediv__(self, other):
denominator = other.real**2 + other.imag**2
return ComplexNumber((self.real * other.real + self.imag * other.imag) / denominator,
(self.imag * other.real - self.real * other.imag) / denominator)
```
在这个类中,`__init__` 方法定义了复数的实部和虚部,默认值为 0;`__str__` 方法用于返回复数的字符串表示;`__add__`、`__sub__`、`__mul__` 和 `__truediv__` 方法分别实现了复数的加、减、乘和除运算。
可以通过以下方式创建复数对象:
```python
c1 = ComplexNumber(1, 2)
c2 = ComplexNumber(3, -4)
```
这样就可以使用复数类实现复数的基本运算。
阅读全文