Сообщить об ошибке.

Класс NewType модуля typing в Python

Типизация отдельных подтипов, основных типов

Не используется в аннотациях, являются строительным блоком для объявления типов.

Изменено в версии 3.10: typing.NewType теперь является классом, а не функцией. При вызове NewType вместо обычной функции возникают некоторые дополнительные затраты времени выполнения. В версии Python 3.11.0 дополнительные затраты времени будут снижены.

Синтаксис:

from typing import NewType

UserId = NewType('T', type)

Параметры:

  • T - подтип основного типа,
  • type - основной тип.

Описание:

Вспомогательный класс NewType модуля typing предназначен для указания отдельного подтипа, основного типа.

Подробнее читайте в введении в модуль typing, а именно в подразделе "Аннотация отдельных подтипов typing.NewType".

Во время выполнения typing.NewType возвращает объект, который возвращает свой аргумент при вызове.

Применение:

UserId = NewType('UserId', int)
first_user = UserId(1)