From: Ivan V. i B. <iv...@ca...> - 2006-05-23 06:49:23
|
(I'm sending this again because I'm afraid the previous post may have qualified as spam because of it subject. Sorry for the inconvenience.) Hi all, when working with numexpr, I have come across a curiosity in both numarray and numpy:: In [30]:b =3D numpy.array([1,2,3,4]) In [31]:b ** -1 Out[31]:array([1, 0, 0, 0]) In [32]:4 ** -1 Out[32]:0.25 In [33]: According to http://docs.python.org/ref/power.html: For int and long int operands, the result has the same type as the operands (after coercion) unless the second argument is negative; in that case, all arguments are converted to float and a float result is delivered. Then, shouldn=E2=80=99t be ``b ** -1 =3D=3D array([1.0, 0.5, 0.33333333, = 0.25])`` (i.e. a floating point result)? Is this behaviour intentional? (I googled for previous messages on the topic but I didn=E2=80=99t find any.= ) Thanks, :: Ivan Vilata i Balaguer >qo< http://www.carabos.com/ C=C3=A1rabos Coop. V. V V Enjoy Data "" |