Bizarre arithmetic results

Terrence Cole list-sink at trainedmonkeystudios.org
Thu Feb 11 01:44:13 CET 2010


Can someone explain to me what python is doing here?

Python 3.1.1 (r311:74480, Feb  3 2010, 13:36:47) 
[GCC 4.3.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> -0.1 ** 0.1
-0.7943282347242815
>>> a = -0.1; b = 0.1
>>> a ** b
(0.7554510437117542+0.2454609236416552j)
>>> -abs(a ** b)
-0.7943282347242815

Why does the literal version return the signed magnitude and the
variable version return a complex?

Cheers,
Terrence




More information about the Python-list mailing list