python定义一个复数类
时间: 2023-06-02 08:07:59 浏览: 133
好的,关于Python定义一个复数类的问题,我可以给你一些解释和示例代码。在Python中,我们可以使用内置的complex类来表示和操作复数,不过如果你需要自定义一个复数类,我们可以这样来实现:
```python
class MyComplex:
def __init__(self, real=0, imag=0):
self.real = real
self.imag = imag
def __add__(self, other):
return MyComplex(self.real+other.real, self.imag+other.imag)
def __sub__(self, other):
return MyComplex(self.real-other.real, self.imag-other.imag)
def __mul__(self, other):
return MyComplex(self.real*other.real-self.imag*other.imag, self.real*other.imag+self.imag*other.real)
def __truediv__(self, other):
denom = other.real**2 + other.imag**2
return MyComplex((self.real*other.real+self.imag*other.imag)/denom, (self.imag*other.real-self.real*other.imag)/denom)
def __repr__(self):
return '({0}, {1})'.format(self.real, self.imag)
```
这个自定义的复数类具有四个重载运算符,包括加减乘除和一个字符串表示方法,你可以使用这些方法对复数进行基本的运算操作,例如:
```python
a = MyComplex(1, 2)
b = MyComplex(3, 4)
print(a+b) # 输出 (4, 6)
print(a-b) # 输出 (-2, -2)
print(a*b) # 输出 (-5, 10)
print(a/b) # 输出 (0.44, 0.08)
```
希望这个解答可以帮助你理解如何在Python中定义一个复数类。
阅读全文