Python Program to Find the Square Root

In this program, you'll learn to find the square root of a number using exponent operator and cmath module.

To understand this example, you should have the knowledge of following Python programming topics:

Source Code: For positive numbers using exponent **

# Python Program to calculate the square root

# Note: change this value for a different result
num = 8 

# uncomment to take the input from the user
#num = float(input('Enter a number: '))
num_sqrt = num ** 0.5
print('The square root of %0.3f is %0.3f'%(num ,num_sqrt))

Output

The square root of 8.000 is 2.828

In this program, we store the number in num and find the square root using the ** exponent operator. This program works for all positive real numbers. But for negative or complex numbers, it can be done as follows.

Source code: For real or complex numbers using cmath module

# Find square root of real or complex numbers
# Import the complex math module
import cmath

# change this value for a different result
num = 1+2j

# uncommment to take input from the user
#num = eval(input('Enter a number: '))
num_sqrt = cmath.sqrt(num)
print('The square root of {0} is {1:0.3f}+{2:0.3f}j'.format(num ,num_sqrt.real,num_sqrt.imag))

Output

The square root of (1+2j) is 1.272+0.786j

In this program, we use the sqrt() function in the cmath (complex math) module.

Notice that we have used the eval() function instead of float() to convert complex number as well. Also notice the way in which the output is formatted.

Look here for more about string formatting in Python.