Understanding Complex Data Type in Python
A complex number has two parts, real part and imaginary part. Complex numbers are represented as A+Bi or A+Bj, where A is real part and B is imaginary part.
Python supports complex data type as built-in feature which means we can directly perform different operations on complex number in python.
First thing first, python uses A+Bj
notation to represent complex number meaning python will recognize 3+4j
as a valid number but 3+4i
is not valid. Let's try it out in python console:
>>> a=3+4j
>>> b=3+4i
SyntaxError: invalid syntax
Creating Complex Data Type Using complex()
We can create complex number from two real numbers. Syntax for doing this is:
c = complex(a,b)
Where, a & b are of real data types and c will be of complex data types.
Let's try it out in python console:
>>> a=5
>>> b=7
>>> c=complex(a,b)
>>> print(c)
(5+7j)
Accessing Real and Imaginary Part From Complex Number
After creating complex data type, we can access real and imaginary part using built-in data descriptors real
and imag
. Let's try it out in python console:
>>> a = 5+6j
>>> a.real
5.0
>>> a.imag
6.0
Reading Complex Number From User
We can read complex number directly from user using built-in function input()
. Since function input()
returns STRING we must convert result to complex using function complex()
. Try following example:
a = complex(input('Enter complex number:'))
print('Given complex number is:',a)
Output
Enter complex number:2+3j Given complex number is: (2+3j)
Finding Conjugate of Complex Number
Complex data type has built-in method called conjugate()
to find conjugate of complex number. Let's try it out in python console:
>>> a=10-6j
>>> a.conjugate()
(10+6j)
Addition, Subtraction, Multiplication & Division on Complex Number
Python supports direct addition, subtraction, multiplication and division using operator +, -, *, /
. Let's try it out in python console:
>>> a=1+2j
>>> b=3+4j
>>> a+b
(4+6j)
>>> a-b
(-2-2j)
>>> a*b
(-5+10j)
>>> a/b
(0.44+0.08j)