Python 使用列表查找列表中多个项目的索引
我想基本上使用一个列表Python 使用列表查找列表中多个项目的索引,python,list,Python,List,我想基本上使用一个列表 L = [10, 10, 100, 10, 17, 15] 使用另一个列表 R = [10, 15] 想回来吗 N = [0, 1, 3, 5] // indices of L that return the values in R 尝试解决方案 我尝试使用L.index()来获取索引,但它只返回第一个值。然后,我尝试在L上运行一个for循环,每次都使用L.index(R[0]),但类似地,这只返回它在上找到的第一个索引 for i in range(len(
L = [10, 10, 100, 10, 17, 15]
使用另一个列表
R = [10, 15]
想回来吗
N = [0, 1, 3, 5] // indices of L that return the values in R
尝试解决方案
我尝试使用L.index()来获取索引,但它只返回第一个值。然后,我尝试在L上运行一个for循环,每次都使用L.index(R[0]),但类似地,这只返回它在上找到的第一个索引
for i in range(len(L)):
j = R[i]
N.append(L.index(j))
return N
这将返回超出范围的索引,这是有意义的,但是如何让它通过L运行呢
多谢各位
N = []
for i in range(len(L)):
if L[i] in R:
N.append(i)
还是用发电机
N = [i for i in range(len(L)) if L[i] in R]
或者使用数组
import numpy as np
N=np.where(np.isin(L,R))
如果x==“任意”零件替换为R中的x零件,则该零件可能重复。如果您先将
R
转换为一个集合R=set(R)
@Aran Fey,则可以提高效率,但它们同样只用于检查一个值,即一次只能检查一个值,即L.index(#)不能传递一个L。在下面找到了,谢谢!