2024-05-19 19:28:35 发布
网友
我有一张清单
alist = [a, b, c, d, e]
我想把它传递给一个函数
def callme(a, b, e): pass
所以,我想做一些
callme(*alist[0,1,4])
有没有一个班轮可以做到这一点?你知道吗
编辑
我想我也可以这样做(编辑不要这样做,drewk用了一种更好的枚举方法来回答。)
callme(*[a for a in alist if alist.index(a) in [0,1,4]])
您也可以这样做:
>>> alist = ['a', 'b', 'c', 'd', 'e'] >>> [a for i,a in enumerate(alist) if i in (0,1,4)] ['a', 'b', 'e']
使用operator.itemgetter:
operator.itemgetter
from operator import itemgetter callme(*itemgetter(0, 1, 4)(alist))
您也可以这样做:
使用
operator.itemgetter
:相关问题 更多 >
编程相关推荐