Python Glossary English

Python 3.12+typingпонятие

typing.TypeAliasType

обобщения и параметры

Тип объектов, создаваемых инструкцией `type X = ...` (псевдонимы типов; Python 3.12+).

Синтаксис

type X = int  # X — экземпляр TypeAliasType

Обычно экземпляры создаёт инструкция type X = ... (PEP 695); конструктор TypeAliasType(name, value) появился в той же 3.12 и нужен, когда псевдоним создаётся во время выполнения; для версий до 3.12 его берут из typing_extensions. У инструкции type правая часть вычисляется лениво — только при обращении к X.__value__, — поэтому псевдоним может ссылаться на ещё не определённые имена или на самого себя (рекурсивные типы) без кавычек-строк.

Примеры

from typing import TypeAliasType
type MyInt = int
print(isinstance(MyInt, TypeAliasType))   # → True
print(MyInt.__name__)   # → MyInt
print(MyInt.__value__)   # → <class 'int'>
print(MyInt is int)   # → False
type Vector = list[float]
print(Vector.__value__)   # → list[float]

См. также

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