Если в списке 1 есть какие-либо элементы списка 2

#python #list #conditional-statements

Вопрос:

Предположим, что у нас есть следующие два списка,

list1 = ['text_svm_a', 'football_04', 'nice_sensor']

list2 = ['svm', 'sensor']

 filtered_list = [item for item in list1 if item_contains_any_of_items_in_list2]
 

любая помощь в написании item_contains_any_of_items_in_list2 действительно ценится.

Примечание: Оба списка могут быть большими, поэтому я не хочу жестко кодировать каждое условие.

Ответ №1:

Вы можете использовать any :

 filtered_list = [item for item in list1 if any(x in item for x in list2)]
# ['text_svm_a', 'nice_sensor']