在Python中构建一个复数类,可以按照以下步骤进行:
1. 定义复数类,包含实部和虚部属性。
3. 实现获取和设置实部和虚部的方法。
4. 实现复数的加、减、乘等运算方法。
下面是一个简单的复数类实现示例:
```python
class ComplexNumber:
def __init__(self, real=0.0, imag=0.0):
self.real = real
self.imag = imag
def set_real(self, real):
self.real = real
def set_imag(self, imag):
self.imag = imag
def get_real(self):
return self.real
def get_imag(self):
return self.imag
def __add__(self, other):
if isinstance(other, ComplexNumber):
return ComplexNumber(self.real + other.real, self.imag + other.imag)
else:
return ComplexNumber(self.real + other, self.imag)
def __sub__(self, other):
if isinstance(other, ComplexNumber):
return ComplexNumber(self.real - other.real, self.imag - other.imag)
else:
return ComplexNumber(self.real - other, self.imag)
def __mul__(self, other):
if isinstance(other, ComplexNumber):
real = self.real * other.real - self.imag * other.imag
imag = self.real * other.imag + self.imag * other.real
return ComplexNumber(real, imag)
else:
return ComplexNumber(self.real * other, self.imag * other)
def __str__(self):
return f"{self.real} {'+' if self.imag >= 0 else '-'} {abs(self.imag)}j"
测试代码
c1 = ComplexNumber(1, 2)
c2 = ComplexNumber(3, -4)
print(f"c1: {c1}")
print(f"c2: {c2}")
print(f"c1 + c2: {c1 + c2}")
print(f"c1 - c2: {c1 - c2}")
print(f"c1 * c2: {c1 * c2}")
这个复数类包含了基本的复数运算,如加法、减法和乘法,并且可以通过`__str__`方法来友好地打印复数。
如果你需要更高级的功能,比如除法或者使用Numpy库进行更复杂的数学运算,你可以进一步扩展这个类。