定义一个复数类 Complex,重载运算符“+”,使之能用于复数的加法运算。参加运 宣的两个运算量可以都是类对象,也可以其中有一个是整数, 顺序任意。如cl+2, i+c1, d+i均合法(设i为整数,c1, c2 为复数)。编程序,分别求两个复数之和、整数和复数之和。
时间: 2024-10-21 09:13:27 浏览: 24
复数
为了定义一个复数类Complex并重载"+"运算符,你可以按照以下步骤进行:
```python
class Complex:
def __init__(self, real=0, imag=0):
self.real = real
self.imag = imag
def __add__(self, other):
# 如果other是另一个Complex对象,直接相加
if isinstance(other, Complex):
return Complex(self.real + other.real, self.imag + other.imag)
# 如果other是一个整数,将它转换成Complex对象后再相加
else:
return Complex(self.real + other, self.imag)
# 示例复数实例
c1 = Complex(3, 4)
c2 = Complex(-1, 2)
i = 5
# 求两个复数之和
sum_complex = c1 + c2
print(f"两个复数之和: {sum_complex}")
# 整数和复数之和
sum_int_complex = c1 + i
print(f"整数和复数之和: {sum_int_complex}")
```
在这个例子中,`__add__`是一个特殊方法,当我们对复数对象进行加法操作时,Python会自动调用这个方法来处理。如果`other`是另一个复数,我们就简单地相加实部和虚部;如果是整数,我们创建一个新的复数,其虚部保持为0。
阅读全文