TensorFlow, почему Python был выбранным языком?

Вы ищете any() :

if any('apple' in code for code in CODES):
    ...

В сочетании с простым выражением генератора это делает задачу. Выражение генератора принимает каждый кортеж и дает True, если оно содержит 'apple'. any() затем возвращает True, когда первый элемент, который он запрашивает, возвращает True (в противном случае False). Следовательно, это делает то, что вы хотите. Он также хорошо читается - , если какой-либо из кортежей содержит 'apple' .

Если вы делаете это много раз и нуждаетесь в производительности, то, возможно, стоит сделать набор всех значений, позволяющих сделать это очень быстро:

cache = set(itertools.chain.from_iterable(CODES)))

Естественно, что построение этого будет медленным и использовать память, поэтому было бы неплохо, если вам не понадобится много производительности и будет выполнять много проверок членства.

125
задан Salvador Dali 16 July 2017 в 03:45
поделиться