如果我使用 numpy,那么我可以按如下方式对数组进行切片:import numpy as npA = np.asarray([1, 2, 3, 4, 5])print(A[np.asarray([1, 3])])然后输出是[2 4]。我想知道我是否可以在不使用 numpy 的情况下执行相同的操作,因为 A 只是一个 list。
2 回答

森栏
TA贡献1810条经验 获得超5个赞
不幸的是,你不能。您可以切片纯 python 列表。然而,这不是切片。如果你在列表上尝试,你会得到
TypeError: list indices must be integers or slices, not list
numpy 数组支持这一点,因为它们具有不同的__get__
方法实现。除了list
自己对类进行子类化之外,您无能为力(实际上您不应该这样做,numpy 实现已针对此类操作进行了优化)。
添加回答
举报
0/150
提交
取消