Напишите функцию, которая принимает два списка и возвращает новый список, содержащий только элементы, которые присутствуют в обоих списках. Порядок элементов в результирующем списке должен соответствовать их порядку в первом списке.
Пример:
list1 = [1, 2, 3, 4, 5]
list2 = [3, 4, 5, 6, 7]
result = find_intersection(list1, list2)
print(result)
# Ожидаемый результат: [3, 4, 5]
Решение задачи🔽
def find_intersection(list1, list2):
set2 = set(list2)
return [item for item in list1 if item in set2]
# Пример использования:
list1 = [1, 2, 3, 4, 5]
list2 = [3, 4, 5, 6, 7]
result = find_intersection(list1, list2)
print(result)