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

Типы аннотаций коллекций модуля typing в Python.

Типизация базовых типов Python.

Рассмотренные здесь последовательностей и коллекций соответствует встроенным типам Python.

Типы аннотаций базовых типов Python:


typing.Dict(dict, MutableMapping[KT, VT]):

Класс typing.Dict() представляет собой встроенную версию словаря dict.

Полезно для аннотирования возвращаемых типов. Для аннотирования аргументов предпочтительно использовать абстрактный тип коллекции, например Mapping.

Этот тип можно использовать следующим образом:

def count_words(text: str) -> Dict[str, int]:
    ...

Не рекомендуется с Python 3.9: теперь основной встроенный тип dict поддерживает синтаксис аннотации []. Смотрите встроенный "Тип псевдонима".

typing.List(list, MutableSequence[T]):

Класс typing.List() представляет собой встроенную версию списка list.

Полезно для аннотирования возвращаемых типов. Для аннотирования аргументов предпочтительно использовать абстрактный тип коллекции, такой как Sequence или Iterable.

Этот тип может быть использован следующим образом:

T = TypeVar('T', int, float)

def vec2(x: T, y: T) -> List[T]:
    return [x, y]

def keep_positives(vector: Sequence[T]) -> List[T]:
    return [item for item in vector if item > 0]

Не рекомендуется с Python 3.9: теперь основной встроенный тип list поддерживает синтаксис аннотации []. Смотрите встроенный "Тип псевдонима".

typing.Set(set, MutableSet[T]):

Класс typing.Set() представляет собой встроенную версию множества set.

Полезно для аннотирования возвращаемых типов. Для аннотирования аргументов предпочтительно использовать абстрактный тип коллекции, такой как AbstractSet.

Не рекомендуется с Python 3.9: теперь основной встроенный тип set поддерживает синтаксис аннотации []. Смотрите встроенный "Тип псевдонима".

typing.FrozenSet(frozenset, AbstractSet[T_co]):

Класс typing.FrozenSet() представляет собой встроенную версию неизменяемого множества frozenset.

Не рекомендуется с Python 3.9: теперь основной встроенный тип frozenset поддерживает синтаксис аннотации []. Смотрите встроенный "Тип псевдонима".

Note Tuple is a special form.Corresponding to types in collections

typing.DefaultDict(collections.defaultdict, MutableMapping[KT, VT]):

Класс typing.DefaultDict() A generic version of collections.defaultdict.

Не рекомендуется с Python 3.9: теперь collections.defaultdict() поддерживает синтаксис аннотации []. Смотрите встроенный "Тип псевдонима".

typing.OrderedDict(collections.OrderedDict, MutableMapping[KT, VT]):

Класс typing.OrderedDict() представляет собой встроенную версию collections.OrderedDict.

Не рекомендуется с Python 3.9: теперь collections.OrderedDict() поддерживает синтаксис аннотации []. Смотрите встроенный "Тип псевдонима".

typing.ChainMap(collections.ChainMap, MutableMapping[KT, VT]):

Класс typing.ChainMap() представляет собой встроенную версию collections.ChainMap.

Новое в Python 3.6.1.

Не рекомендуется с Python 3.9: теперь collections.ChainMap() поддерживает синтаксис аннотации []. Смотрите встроенный "Тип псевдонима".

typing.Counter(collections.Counter, Dict[T, int]):

Класс typing.Counter() представляет собой встроенную версию collections.Counter.

Новое в Python 3.6.1.

Не рекомендуется с Python 3.9: теперь collections.Counter() поддерживает синтаксис аннотации []. Смотрите встроенный "Тип псевдонима".

typing.Deque(deque, MutableSequence[T]):

Класс typing.Deque() представляет собой встроенную версию collections.deque.

Новое в Python 3.6.1.

Не рекомендуется с Python 3.9: теперь collections.deque() поддерживает синтаксис аннотации []. Смотрите встроенный "Тип псевдонима".