Python complex() function is used to create complex numbers. It’s a built-in function that returns a complex type from the input parameters.
Table of Contents
Python complex() function syntax is:
Copyclass complex([real[, imag]])
Some of the important points to remember while using complex() function are:
- Python complex() function returns complex number with value
real + imag*1j.
- We can convert string to complex number using complex() function. If the first argument is string, second argument is not allowed.
- While converting string to complex number, whitespaces in string is not allowed. For example, ‘1+2j’ is fine but ‘1 + 2j’ is not.
- If no argument is passed, then
- 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 complex() examples
Let’s look at some complex() function examples.
complex() without any argument
Copyc = complex() print(type(c)) print(c)
Copy<class 'complex'> 0j
complex() with numeric arguments
Copyc = 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)
Copy(1+1j) (1.5-2.1j) (15+0j) (10-1j)
complex() with underscore numeric literals
Copyc = complex(10_000_000.0, -2) print(c)
complex() with complex number inputs
Copyc = 1 + 2j c = complex(c, -4) print(c) c = complex(1+2j, 1+2J) print(c)
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() with string arguments
Copyc = complex("1+2j") print(c)
Let’s see what happens when the input string has white spaces.
Copyc = complex("1 + 2j")
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.
Copyc = complex("1+j", 2)
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.
Copyc = complex(2, "-2j")
TypeError: complex() second arg can't be a string
That’s all for python complex() function.
Reference: Official Documentation