NumPy中如何同时索引独立元素与连续区间?
在NumPy中混合索引独立元素与连续区间的简洁方案
你想要的类似arr[[2, 4, 6, 10:]]的写法,用NumPy的np.r_就能实现:
import numpy as np arr = np.arange(0, 20) selected = arr[np.r_[2, 4, 6, 10:]]
np.r_是NumPy内置的便捷工具,专门用来快速拼接单个索引、切片和数组,自动把这些输入转换成合法的一维索引数组,完全省去手动用hstack或concatenate拼接的麻烦。
如果需要替代方案,也可以用np.concatenate简化原代码:
selected = arr[np.concatenate([[2,4,6], np.arange(10, len(arr))])]
但np.r_的写法最贴合你想要的简洁风格,是这类混合索引场景的首选方法。
内容的提问来源于stack exchange,提问作者I. Dakhtin
相关产品推荐
相关产品推荐

