[Numpy-discussion] better error message possible?

Thouis (Ray) Jones thouis at gmail.com
Mon Jun 4 10:27:29 EDT 2012


On Fri, Jun 1, 2012 at 6:56 PM, Chris Withers <chris at simplistix.co.uk> wrote:
> On 01/06/2012 16:39, Benjamin Root wrote:
>>
>>
>>      > >>> import numpy
>>      > >>> numpy.zeros(10)[-123]
>>      > Traceback (most recent call last):
>>      >   File "<stdin>", line 1, in <module>
>>      > IndexError: index out of bounds
>>      >
>>      > ...could say this:
>>      >
>>      > >>> numpy.zeros(10)[-123]
>>      > Traceback (most recent call last):
>>      >   File "<stdin>", line 1, in <module>
>>      > IndexError: -123 is out of bounds
>>
>>     Only that no-one has implemented it, I guess. If you want to then
>>     that'd be cool :-).
>>
>>     To be generally useful for debugging, it would probably be good for
>>     the error message to also mention which dimension is involved, and/or
>>     the actual size of the array in that dimension. You can also get such
>>     error messages from expressions like 'arr[i, j, k]', after all, where
>>     it's even less obvious what went wrong.
>>
>>     -- Nathaniel
>>
>>
>> +1, please!
>
> Indeed, sadly I'm not a C developer. It's a pet bugbear of mine that
> Python's built-in exceptions often tell you what went wrong but not what
> data caused the error, even when it's easily to hand when raising the
> exception.

I could look into this.  There are only ~10 places the code generates
this error, so it should be a pretty minor change.

Ray Jones



More information about the NumPy-Discussion mailing list