The math
-module contains another math.pow()
function. The difference to the builtin pow()
-function or **
operator is that the result is always a float
:
import math
math.pow(2, 2) # 4.0
math.pow(-2., 2) # 4.0
Which excludes computations with complex inputs:
math.pow(2, 2+0j)
TypeError: can't convert complex to float
and computations that would lead to complex results:
math.pow(-2, 0.5)
ValueError: math domain error