On Thu, May 20, 2021 at 3:03 PM Ethan Furman <[email protected]> wrote:
> > But it nevertheless feels like a bit of an abuse - the original point
> > of ellipsis was for indexing, and in particular complex slices like
> > a[1:20:2, ..., 3:5]. That usage is common in numpy, as I understand
> > it,
> Interesting -- do you know what ... means in that context?
>
In NumPy, the ellipsis means "fill in as many dimensions as needed (with
full range)".
So e.g., if I have a 5-D array, and I want just a portion from the first
and last dimension (but everything from the middle ones), I can type:
a[1:20:2, :, :, :, 3:5]
But as a simplification, I can use the example given:
a[1:20:2, ..., 3:5]
This is particularly useful since in NumPy it is not uncommon to expand or
contract the number of dimensions (often with some dimensions having only a
span of 1). If you don't want to think about which version of the
high-dimensional array you are working with (that might have been
.flatten()'d, .squeeze()'d, or .expand_dims()'d), this is sometimes more
expressive.
--
The dead increasingly dominate and strangle both the living and the
not-yet born. Vampiric capital and undead corporate persons abuse
the lives and control the thoughts of homo faber. Ideas, once born,
become abortifacients against new conceptions.
_______________________________________________
Python-Dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at
https://mail.python.org/archives/list/[email protected]/message/LDBSVKXWVHWV7CHAY74OQQ5GN24A2MLK/
Code of Conduct: http://python.org/psf/codeofconduct/