首页 > 解决方案 > 一个以两个浮点数 x 和 y 作为输入的构造函数,x 是实部,y 是虚部(复数)。我该如何设置?

问题描述

class ComplexNumber:
    def __init__(self, x, y):
        self.x + self.y + "i"

我正在尝试获得一个复数。我在编码方面完全是个菜鸟,我不确定它到底在问我什么。但是我在正确的道路上吗?

标签: pythonpython-3.x

解决方案


正如其他人已经提到的,python 支持虚数。但是,如果您必须为分配或其他内容手动设置它,它可能看起来像这样:

class ComplexNumber:
    def __init__(self, x, y):
        self.x = x
        self.y = y

基本上你不需要i, 除了可能显示的东西,你可以用额外的类函数来做:

    def displayNumber(self):
        print(str(x) + " + i x " + str(y))

要真正类似于复数,您还需要添加正确处理复数的函数。例如:

    def addComplex(self, addX, addY):
        self.x = self.x + addX
        self.y = self.y + addY

这也可以通过其他函数来完成,例如乘法、幅度等。更好的是使用运算符重载来做到这一点,但我想这超出了这个问题的范围。


推荐阅读