все Python 3astпонятие
ast.alias
импорт
Узел одного импортируемого имени в import и from ... import. Поля: name — имя строкой, asname — псевдоним после as или None.
Синтаксис
ast.alias(name, asname=None)
import os.path — один alias с name='os.path', а не цепочка Attribute. В from . import x модуль и уровень относительного импорта лежат не в alias, а в ImportFrom (module=None, level=1), а from m import * даёт alias с name='*'. Позиции lineno у alias есть только с 3.10.
Примеры
import ast
tree = ast.parse('import os.path\nfrom math import sqrt as root, pi')
for node in tree.body:
print([(a.name, a.asname) for a in node.names])
# → [('os.path', None)] / [('sqrt', 'root'), ('pi', None)]
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности