У меня есть два списка целых чисел Python: x
и y
. Все элементы x
появляются где-то в y
, и только один раз. Для каждого элемента из x
, я хочу знать индекс соответствующего значения в y
. Затем я хочу установить эти индексы в список z
.Поиск индексов значений одного списка в другом списке
Приведенный ниже код работает, как я только что описал. Однако, кажется, немного неуклюжий для задачи, которая, как я подозреваю, может иметь более элегантное решение всего за пару строк или около того. Поэтому, мой вопрос: каково наименьшее количество строк, в которых можно переписать следующий код?
z = [0 for i in range(len(x))]
for i, j in enumerate(x):
for k, l in enumerate(y):
if j==l:
z[i] = k
break
Списки действительно имеют '.index)' метода (. –