python如何将列表作为列表的索引
比如a=[1,2,3,4,5,6,7,8,9,10]b=[3,7,9]b作为一个列表怎么作为索引使用?比如a[b]是会错误的,获取a中,索引号在b里边的值。我想获得的结果...
比如 a=[1,2,3,4,5,6,7,8,9,10]
b=[3,7,9]
b 作为一个列表怎么作为索引使用?
比如 a[b] 是会错误的,获取a中,索引号在b里边的值。
我想获得的结果是
可以快速计算出 a[b]=[4,8,10]。的方法,不知道python怎么实现,切片不是连贯的,是非常无规律的。 展开
b=[3,7,9]
b 作为一个列表怎么作为索引使用?
比如 a[b] 是会错误的,获取a中,索引号在b里边的值。
我想获得的结果是
可以快速计算出 a[b]=[4,8,10]。的方法,不知道python怎么实现,切片不是连贯的,是非常无规律的。 展开
2个回答
展开全部
1.
a=['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n']
b=[1,4,3,6,10]
c = type(a)(map(lambda i:a[i], b)) #这里没有判断 b的元素作为a的索引的时候 值太大 溢出的异常
print c
>>>
['b', 'e', 'd', 'g', 'k']
>>>
------------------------------
2.
>>> import numpy as np
>>> b = np.array([2,3,4,5,6])
>>> a = np.array([0,2,4])
>>> b[a]
array([2, 4, 6])
展开全部
a[b[0]]这是以b列表的元素为索引,取a列表中的值
a.index(b[0])这是从a列表中取出关于b列表中的元素的位置(索引)
a.index(b[0])这是从a列表中取出关于b列表中的元素的位置(索引)
追问
我不是这个意思,如果取单个元素 a[b[0]]当然满足,要从a中取以b的值为a的索引号的a中所有值构成一个新的list。类似matlab 的
a=[1,2,3,4,5,6,7,8,9,10],
b=[3,7,9]
a[b]就会变成[4,8,10],十分简练,速度也十分快,如果是for,我也知道怎么用,不过速度肯定会很低。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询