Python complex()

时间:2020-02-23 14:42:32  来源:igfitidea点击:

Python complex()函数用于创建复数。
这是一个内置函数,可从输入参数返回复杂类型。

Python complex()

Python complex()函数语法为:

class complex([real[, imag]])

使用complex()函数时要记住的一些重要要点是:

  • Python complex()函数返回值为" real + imag * 1j"的复数。

  • 我们可以使用complex()函数将字符串转换为复数。
    如果第一个参数是字符串,则不允许第二个参数。

  • 将字符串转换为复数时,不允许在字符串中使用空格。
    例如," 1 + 2j"很好,但" 1 + 2j"不是。

  • 如果没有传递任何参数,则返回" 0j"。

  • 输入参数可以是任何数字格式,例如十六进制,二进制等。

  • 从Python 3.6开始,也允许在数字文字中使用下划线,请参阅PEP 515。

Python complex()示例

让我们看一些complex()函数示例。

没有任何参数的complex()

c = complex()
print(type(c))
print(c)

输出:

<class 'complex'>
0j

带数字参数的complex()

c = complex(1, 1)
print(c)

c = complex(1.5, -2.1)
print(c)

c = complex(0xF)  # hexadecimal
print(c)

c = complex(0b1010, -1)  # binary
print(c)

输出:

(1+1j)
(1.5-2.1j)
(15+0j)
(10-1j)

带下划线数字文字的complex()

c = complex(10_000_000.0, -2)
print(c)

输出:(10000000-2j)

带复数输入的complex()

c = 1 + 2j
c = complex(c, -4)
print(c)
c = complex(1+2j, 1+2J)
print(c)

输出:

(1-2j)
(-1+3j)

请注意,复杂字面量是如何组合形成一个新的复数的。
如果第二个参数是复数,则计算将不同。

带字符串参数的complex()

c = complex("1+2j")
print(c)

输出:(1 + 2j)

让我们看看输入字符串带有空格的情况。

c = complex("1 + 2j")

输出:ValueError:complex()arg是格式错误的字符串

让我们看看当第一个参数是一个字符串而第二个参数也被提供时会发生什么。

c = complex("1+j", 2)

输出:如果第一个是字符串,则TypeError:complex()不能接受第二个arg。

如果我们尝试将第二个参数作为String传递,该怎么办,我们看看会遇到什么错误。

c = complex(2, "-2j")

输出:TypeError:complex()第二个arg不能为字符串。