[Numpy-discussion] memoryview shape/strides representation for ndim = 0

Stefan Krah stefan-usenet at bytereef.org
Mon Aug 22 08:30:34 EDT 2011


Hello,

Numpy arrays and memoryview currently have different representations
for shape and strides if ndim = 0:

>>> from numpy import *
>>> x = array(9, int32)
>>> x.ndim
0
>>> x.shape
()
>>> x.strides
()
>>> m = memoryview(x)
>>> m.ndim
0L
>>> m.shape is None
True
>>> m.strides is None
True


I think the Numpy representation is nicer. Also, I think that memoryviews
should attempt to mimic the underlying object as closely as possible.


Since the ndim = 0 case probably only occurs in Numpy, it might be possible
to change the representation in memoryview.


Travis, was the "shape is None" representation used for compatibility with 
ctypes? Would it be possible or advisable to use the Numpy representation?



Stefan Krah





More information about the NumPy-Discussion mailing list