Как создать подкласс словаря, чтобы он поддерживал подсказки типов? - PullRequest
1 голос
/ 09 апреля 2020

Как можно разделить словарь на подклассы так, чтобы подкласс поддерживал хинтинг типа? Он должен вести себя как словарь во всех отношениях и поддерживать подсказки типов ключей и значений. Подкласс добавит функции, которые обращаются к данным dict и управляют ими. Например, он будет иметь функцию valueat(self, idx:int), которая возвращает значение словаря с заданным индексом.

В качестве базового класса не требуется OrderedDict, но словарь должен иметь предсказуемый порядок , Поскольку OrderedDict поддерживает порядок вставки и поддерживает подсказки типов, кажется, что это разумное место для начала. Вот что я попробовал:

from collections import OrderedDict

class ApplicationSpecificDict(OrderedDict[str, int]):
    ...

Однако, это не с ошибкой: TypeError: 'type' object is not subscriptable

Это не поддерживается в Python 3.7+, или я что-то упустил?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...