python定义一个复数类complex
时间: 2023-06-05 20:47:20 浏览: 330
Python中已经有一个内置的复数类complex,可以直接使用。如果需要自定义一个复数类,可以按照以下方式定义:
```python
class Complex:
def __init__(self, real, imag):
self.real = real
self.imag = imag
def __add__(self, other):
return Complex(self.real + other.real, self.imag + other.imag)
def __sub__(self, other):
return Complex(self.real - other.real, self.imag - other.imag)
def __mul__(self, other):
return Complex(self.real * other.real - self.imag * other.imag, self.real * other.imag + self.imag * other.real)
def __truediv__(self, other):
denominator = other.real ** 2 + other.imag ** 2
return Complex((self.real * other.real + self.imag * other.imag) / denominator, (self.imag * other.real - self.real * other.imag) / denominator)
def __str__(self):
return f"{self.real} + {self.imag}i"
```
这个类包含了四个基本的运算方法:加、减、乘、除。其中加、减、乘的实现比较简单,除法需要用到复数的共轭。同时,为了方便输出,还定义了一个__str__方法。