Python Glossary English

все Python 3astпонятие

ast.NotIn

операторы

Оператор проверки отсутствия not in в списке ops узла Compare.

Синтаксис

ast.NotIn()

Хотя пишется двумя словами, это один оператор: a not in b даёт Compare с единственным NotIn, без UnaryOp и Not. Аналогично is not — это IsNot. Код, который ищет отрицание по ast.Not, проверки not in не увидит; а not a in b с тем же смыслом даёт уже UnaryOp(Not, Compare(In)).

Примеры

import ast
n = ast.parse('x not in seen', mode='eval').body
print(type(n).__name__, [type(o).__name__ for o in n.ops])  # → Compare ['NotIn']
print(any(isinstance(m, ast.Not) for m in ast.walk(n)))  # → False

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности