все 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Сообщить о неточности