Wikipedia has interesting coverage of the history and the differing points of view on the value of 0 ** 0
:
The debate has been going on at least since the early 19th century. At that time, most mathematicians agreed that
0 ** 0 = 1
, until in 1821 Cauchy listed0 ** 0
along with expressions like0⁄0
in a table of undefined forms. In the 1830s Libri published an unconvincing argument for0 ** 0 = 1
, and Möbius sided with him…
As applied to computers, IEEE 754 recommends several functions for computing a power. It defines pow(0, 0)
and pown(0, 0)
as returning 1
, and powr(0, 0)
as returning NaN
.
Most programming languages follow the convention that 0 ** 0 == 1
. Python is no exception, both for integer and floating-point arguments.