Python complex() function is used to create complex numbers. It’s a built-in function that returns a complex type from the input parameters.
Python complex()函数用于创建复数。 这是一个内置函数,可从输入参数返回复杂类型 。
Python complex() (Python complex())
Python complex() function syntax is:
Python complex()函数语法为:
class complex([real[, imag]])
Some of the important points to remember while using complex() function are:
使用complex()函数时要记住的一些重要要点是:
- Python complex() function returns complex number with value
real + imag*1j
. Python complex()函数返回值为real + imag*1j
复数。 - We can convert string to complex number using complex() function. If the first argument is string, second argument is not allowed. 我们可以使用complex()函数将字符串转换为复数。 如果第一个参数是字符串,则不允许第二个参数。
- While converting string to complex number, whitespaces in string is not allowed. For example, ‘1+2j’ is fine but ‘1 + 2j’ is not. 将字符串转换为复数时,不允许在字符串中使用空格。 例如,“ 1 + 2j”很好,但“ 1 + 2j”不是。
- If no argument is passed, then
0j
is returned. 如果未传递任何参数,则返回0j
。 - Input arguments can be in any numeric format such as hexadecimal, binary etc. 输入参数可以是任何数字格式,例如十六进制,二进制等。
- Underscores in numeric literals are also allowed from Python 3.6 onwards, refer PEP 515. 从Python 3.6开始,也允许在数字文字中使用下划线,请参阅PEP 515 。
Python complex()示例 (Python complex() examples)
Let’s look at some complex() function examples.
让我们看一些complex()函数示例。
没有任何参数的complex() (complex() without any argument)
c = complex()
print(type(c))
print(c)
Output:
输出:
<class 'complex'>
0j
带数字参数的complex() (complex() with numeric arguments)
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)
Output:
输出:
(1+1j)
(1.5-2.1j)
(15+0j)
(10-1j)
带下划线数字文字的complex() (complex() with underscore numeric literals)
c = complex(10_000_000.0, -2)
print(c)
Output: (10000000-2j)
输出: (10000000-2j)
带复数输入的complex() (complex() with complex number inputs)
c = 1 + 2j
c = complex(c, -4)
print(c)
c = complex(1+2j, 1+2J)
print(c)
Output:
输出:
(1-2j)
(-1+3j)
Notice how complex literals are combined to form a new complex number. If the second argument is a complex number, then the calculation is different.
请注意,复杂字面量是如何组合形成一个新的复数的。 如果第二个参数是复数,则计算将不同。
带字符串参数的complex() (complex() with string arguments)
c = complex("1+2j")
print(c)
Output: (1+2j)
输出: (1+2j)
Let’s see what happens when the input string has white spaces.
让我们看看当输入字符串带有空格时会发生什么。
c = complex("1 + 2j")
Output: ValueError: complex() arg is a malformed string
输出: ValueError: complex() arg is a malformed string
Let’s see what happens when the first argument is a string and the second argument is also provided.
让我们看看当第一个参数是一个字符串并且还提供了第二个参数时会发生什么。
c = complex("1+j", 2)
Output: TypeError: complex() can't take second arg if first is a string
输出: TypeError: complex() can't take second arg if first is a string
What if we try to pass the second argument as String, let’s see what error we get.
如果我们尝试将第二个参数作为String传递,该怎么办,让我们看看发生了什么错误。
c = complex(2, "-2j")
Output: TypeError: complex() second arg can't be a string
输出: TypeError: complex() second arg can't be a string
That’s all for python complex() function.
这就是python complex()函数的全部内容。
Reference: Official Documentation
参考: 官方文档