马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 zltzlt 于 2020-2-13 18:21 编辑
06 - 一维数组必备的三大操作:索引,切片,花式索引|【甲由电申田曱干甴】
import numpy as np
arr = np.array(['小甲鱼', '小田鱼', '小由鱼', '小申鱼', '小曱鱼', '小电鱼', '小甴鱼', '小干鱼'])
print(arr[[0, 2, 4, 6, 1, 3, 5, 7]])
结果:
['小甲鱼' '小由鱼' '小曱鱼' '小甴鱼' '小田鱼' '小申鱼' '小电鱼' '小干鱼']
重写 list 的 __getitem__ 方法也可以实现类似效果:
class List(list):
def __getitem__(self, item):
if isinstance(item, (int, slice)):
return super().__getitem__(item)
elif isinstance(item, list):
return [super(List, self).__getitem__(i) for i in item]
a = List(['小甲鱼', '小田鱼', '小由鱼', '小申鱼', '小曱鱼', '小电鱼', '小甴鱼', '小干鱼'])
print(a[[0, 2, 4, 6, 1, 3, 5, 7]])
结果:
['小甲鱼', '小由鱼', '小曱鱼', '小甴鱼', '小田鱼', '小申鱼', '小电鱼', '小干鱼']
|