Python Glossary English

Python 3.8+astпонятие

ast.TypeIgnore

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

Узел комментария # type: ignore: lineno — строка, tag — текст после ignore. Лежит в списке type_ignores корня Module.

Синтаксис

ast.TypeIgnore(lineno, tag)

Комментарии ast не сохраняет, и # type: ignore — исключение лишь при ast.parse(…, type_comments=True); без флага type_ignores всегда пуст. В дерево узел не встраивается: он не потомок инструкции, к которой относится, связь только через номер строки. Тег хранится с квадратными скобками: для # type: ignore[attr] tag равен '[attr]'.

Примеры

import ast
src = 'x = 1\ny = f()  # type: ignore[attr]'
print(ast.parse(src).type_ignores)  # → []
ti = ast.parse(src, type_comments=True).type_ignores[0]
print(type(ti).__name__, ti.lineno, ti.tag)  # → TypeIgnore 2 [attr]

См. также

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