# [Tutor] How do I do square roots and exponents?

**Danny Yoo
**
dyoo@hkn.eecs.berkeley.edu

*Wed, 27 Mar 2002 17:26:50 -0800 (PST)*

>* While toying around in Python, I decided to make a program that
*>* calculates the hypotenuse. I ran into a problem when I realized that I
*>* had no idea what the command was for square roots and exponents. Does
*>* anyone know?
*
Hi James,
Python has an exponentiation operator using the double stars "**", so you
can do something like this:
###
>>>* 2 ** (0.5)
*1.4142135623730951
>>>* 2 ** 8
*256
###
If you'd rather like to use functions to do this, you may also find the
functions in the 'math' module very useful:
http://www.python.org/doc/lib/module-math.html
###
>>>* math.sqrt(2)
*1.4142135623730951
>>>* math.pow(2, 8)
*256.0
###
(Notice that math.pow is defined to return a floating point value.)
Finally, if you know about complex numbers, then you'll definitely want to
look at the cmath module:
http://www.python.org/doc/lib/module-cmath.html
since it properly supports things like taking the square root of negative
numbers:
###
>>>* (-1) ** (0.5)
*Traceback (most recent call last):
File "<stdin>", line 1, in ?
ValueError: negative number cannot be raised to a fractional power
>>>* import cmath
*>>>* cmath.sqrt(-1)
*1j
###
Good luck!