Я сравниваю два списка в Python.
list1
- это расширенный набор list2
.
Для элементов list1
я хочу, чтобы их индекс составлял list2
(если имеется).
Вот два примера.
list1 = ['a','b','c','d']
list2 = ['a','b']
Решение должно дать [0, 1]
.
list1 = ['a','b','c','d']
list2 = ['b','a']
Решение должно дать [1, 0]
.
Я попытался следующий код, но это работает только для первого примера.
list1 = ['a','b','c','d']
list2 = ['a','b']
pairwise = zip(list1,list2)
matched_index = [idx for idx, pair in enumerate(pairwise) if pair[0] == pair[1]]
Это работает.Однако для второго набора данных выборки я получаю неправильный вывод []
вместо ожидаемого вывода [1, 0]
.
list1 = ['a','b','c','d']
list2 = ['b','a']
pairwise = zip (list1,list2)
matched_index = [idx for idx, pair in enumerate(pairwise) if pair[0] == pair[1]]
print(matched_index) # prints []
Пожалуйста, предложите путь вперед.