Python Glossary English

Python 3.8+astпонятие

ast.type_ignore

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

Абстрактный базовый класс пометок '# type: ignore'; единственный наследник — TypeIgnore. Список Module.type_ignores. Появился в 3.8.

Синтаксис

ast.parse(src, type_comments=True).type_ignores

Список type_ignores заполняется, только если parse вызван с type_comments=True; иначе он всегда пустой, даже если пометки в коде есть. Остальные комментарии в дерево не попадают никогда. Тег после ignore (например, '[attr]') сохраняется в поле tag.

Примеры

import ast
src = 'x = 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, isinstance(ti, ast.type_ignore))
# → TypeIgnore 1 [attr] True

См. также

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