说明
《Python 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
Python 的内置函数 complex() 用于创建一个复数对象。可以传入一个在加减号周围无空格的字符串或者两个数字来代表复数的实部和虚部。
以下是一些简单的使用示例:
complex('1-2j')
# (1-2j)
complex(-2j)
# (-0-2j)
foo = complex(1, 2)
foo
# (1+2j)
foo.conjugate()
# (1-2j)
foo.real # 1.0
foo.imag # 2.0
除了用 complex() 来创建复数外,一般情况下,我们直接用字面量来定义一个复数。
有两种参入方法:
complex(x:str)
complex(real=0, imag=0)
返回值为 real + imag*1j 的复数,或将字符串或数字转换为复数。有两种传参方法。
如果第一个形参是字符串,则它被解释为一个复数,并且函数调用时必须没有第二个形参。
对于一个普通 Python 对象 x,complex(x) 会委托给 x.__complex__()
。 如果 __complex__()
未定义则将回退至 __float__()
。 如果 __float__()
未定义则将回退至 __index__()
。
注意,当从字符串转换时,字符串在 + 或 - 的周围必须不能有空格。
例如 complex('1+2j')
是合法的,但 complex('1 + 2j')
会触发 ValueError 异常。
第二个形参不能是字符串。每个实参都可以是任意的数值类型(包括复数)。如果省略了 imag,则默认值为零,构造函数会像 int 和 float 一样进行数值转换。如果两个实参都省略,则返回 0j。
在 3.6 版更改: 您可以使用下划线将代码文字中的数字进行分组。
在 3.8 版更改: 如果 __complex__()
和 __float__()
未定义则回退至 __index__()
。
更新时间:2022-05-16 18:57:59 标签:python complex 复数