все Python 3Списки (list)понятие
in / not in для списков
поиск
Проверяет наличие элемента в списке за O(n). Возвращает bool.
Синтаксис
item in lst | item not in lst
Проверка линейная, так что многократный поиск внутри цикла легко даёт O(n²) — если один и тот же набор проверяется часто, переложите его в set, где проверка почти мгновенная (ценой хешируемости элементов и потери порядка). Сравнение идёт по ==, а не по типу, поэтому True и 1 считаются одним и тем же элементом. И в отличие от строк, где in ищет подстроку, у списка in ищет элемент целиком, а не подпоследовательность.
Примеры
lst = [1, 2, 3, 4, 5]
print(3 in lst)
# → True
print(6 in lst)
# → False
print(6 not in lst)
# → True
print([1, 2] in [[1, 2], [3, 4]])
# → True (сравнение подсписков)
print(None in [1, None, 3])
# → True
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности