Python Glossary English

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

ast

модуль

Абстрактное синтаксическое дерево: разобрать код Python в дерево узлов и обойти его.

Синтаксис

import ast

Модуль нужен линтерам, анализаторам и генераторам кода: ast.parse превращает исходник в дерево, по которому можно искать конструкции или переписывать их. Отдельная частая польза — ast.literal_eval, безопасная замена eval для строк с литералами. Дерево описывает синтаксис, а не выполнение: типы и значения переменных в нём не видны.

Примеры

import ast
tree = ast.parse('x = 1 + 2')
print(type(tree.body[0]).__name__)  # → Assign
print(ast.literal_eval('[1, 2, 3]'))  # → [1, 2, 3]

См. также

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