Вхождение подстроки из множества подстрок
Как можно сделать условие компактнее и более удобным? Ведь у меня много таких строк, и если я буду продолжать также писать, то это будет длинное условие, и некрасиво будет смотреться.
if "string_1" in my_string or "string_2" in my_string or "string_3" in my_string or "string_4" in my_string...:
continue
Ответы (2 шт):
Автор решения: nomnoms12
→ Ссылка
Используйте функцию any. Она вернёт True, если хотя бы один из элементов, переданного ей итерируемого объекта, является истинным.
Пример:
li = ['string_1', 'string_2', 'string_3', 'string_4']
if any(s in my_string for s in li):
continue
Автор решения: CrazyElf
→ Ссылка
"Функциональный" вариант с использованием any и метода строки __contains__ - аналога in:
if any(map(my_string.__contains__, li)):
continue