Why do they act differently with respect to complex numbers?
Python 2.2.2 (#1, Feb 24 2003, 19:13:11)
[GCC 3.2.2 20030222 (Red Hat Linux 3.2.2-4)] on linux2
Type "help", "copyright" , "credits" or "license" for more information.[color=blue][color=green][color=darkred]
>>> pow(2, 0+1j)[/color][/color][/color]
(0.769238901363 97211+0.6389612 7631363475j)[color=blue][color=green][color=darkred]
>>>
>>> import math
>>> math.pow(2, 0+1j)[/color][/color][/color]
Traceback (most recent call last):
File "<stdin>", line 1, in ?
TypeError: can't convert complex to float; use e.g. abs(z)[color=blue][color=green][color=darkred]
>>>[/color][/color][/color]
Apart from handling complex numbers, the built-in pow also has a
modulo efficiency hack.
When would I want to use math.pow?
Python 2.2.2 (#1, Feb 24 2003, 19:13:11)
[GCC 3.2.2 20030222 (Red Hat Linux 3.2.2-4)] on linux2
Type "help", "copyright" , "credits" or "license" for more information.[color=blue][color=green][color=darkred]
>>> pow(2, 0+1j)[/color][/color][/color]
(0.769238901363 97211+0.6389612 7631363475j)[color=blue][color=green][color=darkred]
>>>
>>> import math
>>> math.pow(2, 0+1j)[/color][/color][/color]
Traceback (most recent call last):
File "<stdin>", line 1, in ?
TypeError: can't convert complex to float; use e.g. abs(z)[color=blue][color=green][color=darkred]
>>>[/color][/color][/color]
Apart from handling complex numbers, the built-in pow also has a
modulo efficiency hack.
When would I want to use math.pow?
Comment