如何使用NumPy打印任意数组的偶数索引对应的元素值
问题解决:Numpy提取数组偶数索引对应的元素
错误原因分析
你当前编写的代码逻辑是筛选数值为偶数的数组元素,和你需要的「筛选偶数索引对应的元素」需求不匹配,所以无法得到预期输出。
正确实现方案
Numpy数组支持切片语法[起始索引:结束索引:步长],要取0、2、4这类偶数索引,直接将步长设置为2即可,代码如下:
import numpy as np arr_1 = np.array([2,4,6,11]) # 步长设为2,默认从索引0开始取,即可拿到所有偶数索引的元素 res = arr_1[::2] # 按你需要的逗号分隔格式输出 print(",".join(map(str, res)))
运行后输出为:
2,6
可选写法(遍历索引实现)
如果你需要显式遍历索引的方式实现,也可以按如下写法,不过效率远低于切片写法:
import numpy as np arr_1 = np.array([2,4,6,11]) # 先筛选所有偶数索引,再按索引取值 res = arr_1[[i for i in range(arr_1.size) if i % 2 == 0]] print(",".join(map(str, res)))
内容的提问来源于stack exchange,提问作者user17344362
相关产品推荐
相关产品推荐

