Isn’t that what arange is for? Imagining ourselves in python2 land for now - I’m proposing arange is to range, as ndrange is to xrange
I’m not convinced it should return an ndarray I agree - I think it should return a range-like object that: - Is convertible via __array__ if needed - Looks like an ndarray, with: - a .dtype attribute - a __getitem__(Tuple[int]) which returns numpy scalars - .ravel() and .flat for choosing iteration order. On Wed, 10 Oct 2018 at 11:21 Allan Haldane allanhald...@gmail.com <http://mailto:allanhald...@gmail.com> wrote: On 10/10/18 12:34 AM, Eric Wieser wrote: > > One thing that worries me here - in python, |range(...)| in essence > > generates a lazy |list| - so I’d expect |ndrange| to generate a lazy > > |ndarray|. In practice, that means it would be a duck-type defining an > > |__array__| method to evaluate it, and only implement methods already > > present in numpy. > > Isn't that what arange is for? > > It seems like there are two uses of python3's range: 1. creating a 1d > iterable of indices for use in for-loops, and 2. with list(range) can be > used to create a sequence of integers. > > Numpy can extend this in two directions: > * ndrange returns an iterable of nd indices (for for-loops). > * arange returns an 1d ndarray of integers instead of a list > > The application of for-loops, which is more niche, doesn't need > ndarray's vectorized properties, so I'm not convinced it should return > an ndarray. It certainly seems simpler not to return an ndarray, due to > the dtype question. > > arange on its own seems to cover the need for a vectorized version of > range. > > Allan > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@python.org > https://mail.python.org/mailman/listinfo/numpy-discussion >
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@python.org https://mail.python.org/mailman/listinfo/numpy-discussion