Python Glossary English

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

ast.mod

корень и базовые узлы

Абстрактный базовый класс корневых узлов: Module, Expression, Interactive и FunctionType. Какой корень получится, решает mode у ast.parse.

Синтаксис

isinstance(tree, ast.mod)

Экземпляров самого mod не бывает: проверка isinstance(tree, ast.mod) просто отличает корень от любого другого узла. Корень зависит от режима: 'exec' → Module, 'eval' → Expression, 'single' → Interactive, 'func_type' → FunctionType. У корней нет lineno — позиции есть у инструкций, выражений и части служебных узлов внутри (arg, keyword, alias, except-ветки).

Примеры

import ast
for mode in ['exec', 'eval', 'single']:
    tree = ast.parse('1 + 1', mode=mode)
    print(mode, type(tree).__name__, isinstance(tree, ast.mod))
# → exec Module True / eval Expression True / single Interactive True

См. также

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