numpy.
s_
A nicer way to build up index tuples for arrays.
Note
Use one of the two predefined instances index_exp or s_ rather than directly using IndexExpression.
index_exp
For any index combination, including slicing and axis insertion, a[indices] is the same as a[np.index_exp[indices]] for any array a. However, np.index_exp[indices] can be used anywhere in Python code and returns a tuple of slice objects that can be used in the construction of complex index expressions.
a[indices]
a[np.index_exp[indices]]
np.index_exp[indices]
If True, always returns a tuple.
See also
Predefined instance that always returns a tuple: index_exp = IndexExpression(maketuple=True).
Predefined instance without tuple conversion: s_ = IndexExpression(maketuple=False).
Notes
You can do all this with slice() plus a few special objects, but there’s a lot to remember and this version is simpler because it uses the standard array indexing syntax.
Examples
>>> np.s_[2::2] slice(2, None, 2) >>> np.index_exp[2::2] (slice(2, None, 2),)
>>> np.array([0, 1, 2, 3, 4])[np.s_[2::2]] array([2, 4])