I want to essentially use one list ie.
L = [10, 10, 100, 10, 17, 15]
and using another list
R = [10, 15]
want to return
N = [0, 1, 3, 5] // indices of L that return the values in R
I tried using L.index() to get the indices but that only returns the first value. I then tried running a for loop over L and using L.index(R[0]) every time, but similarly that only returns the first indices it finds at.
for i in range(len(L)):
j = R[i]
N.append(L.index(j))
return N
This would return index out of range which makes sense, but how do I get it to run through the L?
N = []
for i in range(len(L)):
if L[i] in R:
N.append(i)
or with a generator
N = [i for i in range(len(L)) if L[i] in R]
or with arrays
import numpy as np
N=np.where(np.isin(L,R))
N = []
for i, num in enumerate(L):
if num in R:
N.append(i)
[i for i,l in enumerate(L) if l in R]