[Numpy-discussion] Integers to negative integer powers, time for a decision.
V. Armando Sole
sole at esrf.fr
Sat Oct 8 16:40:51 EDT 2016
Well, testing under windows 64 bit, Python 3.5.2, positive powers of
integers give integers and negative powers of integers give floats. So,
do you want to raise an exception when taking a negative power of an
element of an array of integers? Because not doing so would be
inconsistent with raising the exception when applying the same operation
to the array.
Clearly things are broken now (I get zeros when calculating negative
powers of numpy arrays of integers others than 1), but that behavior was
consistent with python itself under python 2.x because the division of
two integers was an integer. That does not hold under Python 3.5 where
the division of two integers is a float.
You have offered either to raise an exception or to always return a
float (i.e. even with positive exponents). You have never offered to be
consistent with what Python does. This last option would be my favorite.
If it cannot be implemented, then I would prefer always float. At least
one would be consistent with something and we would not invent yet
On 08.10.2016 21:36, Charles R Harris wrote:
> On Sat, Oct 8, 2016 at 1:31 PM, Krisztián Horváth
> <raksi.raksi at gmail.com> wrote:
>> I think it should be consistent with Python3. So, it should give
>> back a float.
>> Best regards,
> Can't do that and also return integers for positive powers. It isn't
> possible to have behavior completely compatible with python for
> arrays: can't have mixed type returns, can't have arbitrary precision
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
More information about the NumPy-Discussion