Quiero usar esencialmente una lista, es decir.
L = [10, 10, 100, 10, 17, 15]y usando otra lista
R = [10, 15]quiero volver
N = [0, 1, 3, 5] // indices of L that return the values in R Intenté usar L.index() para obtener los índices, pero eso solo devuelve el primer valor. Luego intenté ejecutar un bucle for sobre L y usar L.index(R[0]) cada vez, pero de manera similar solo devuelve los primeros índices que encuentra.
for i in range(len(L)): j = R[i] N.append(L.index(j)) return N Esto devolvería el índice fuera de rango, lo que tiene sentido, pero ¿cómo hago para que se ejecute a través de L ?
N = [] for i in range(len(L)): if L[i] in R: N.append(i)o con un generador
N = [i for i in range(len(L)) if L[i] in R]o con arreglos
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]