numpy.s_#
- numpy.s_ = <numpy.lib._index_tricks_impl.IndexExpression object>#
一种更优雅地构建数组索引元组的方式。
注意
请使用两个预定义的实例
index_exp
或s_
中的一个,而不是直接使用 IndexExpression。对于任何索引组合,包括切片和轴插入,
a[indices]
对于任何数组 a 都等同于a[np.index_exp[indices]]
。但是,np.index_exp[indices]
可以在 Python 代码的任何地方使用,并返回一个切片对象元组,可用于构建复杂的索引表达式。- 参数:
- maketuple布尔型
如果为 True,则总是返回一个元组。
另请参阅
s_
不进行元组转换的预定义实例:s_ = IndexExpression(maketuple=False)。
index_exp
是另一个总是返回元组的预定义实例:index_exp = IndexExpression(maketuple=True)。
备注
你可以使用
slice
加上一些特殊对象来完成所有这些操作,但需要记住很多东西,而这个版本更简单,因为它使用了标准的数组索引语法。示例
>>> import numpy as np >>> 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])