Closed
Description
I just noticed that the __index__
method is missing from the array object specification. See https://www.python.org/dev/peps/pep-0357/.
__index__
should return int(self)
if the input is a 0-D array with integer dtype, and raise TypeError otherwise (similar to __int__
except it doesn't work on floating-point arrays). This will allow 0-D integer arrays to be used as indices. While this is not strictly necessary for an array type to support itself as an index, it does mean that things like indexing Python lists with 0-D arrays will work correctly, and it's generally a good Python practice to do this for integer-like types.