Как мне реализовать dict с абстрактными базовыми классами в Python? [Дубликат]

На этот вопрос уже есть ответ:

Как «идеально» переопределить диктовку? 5 ответов

Я пытался реализовать отображение в Python с использованием абстрактного базового класса MutableMapping, но я получил ошибку при создании экземпляра. Как бы я сделал рабочую версию этого словаря, которая бы подражала встроенномуdict класс, насколько это возможно, чтобы быть ясным, с Абстрактные базовые классы?

>>> class D(collections.MutableMapping):
...     pass
... 
>>> d = D()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: Can't instantiate abstract class D with abstract methods __delitem__, __getitem__, __iter__, __len__, __setitem__

Хороший ответ покажет, как заставить это работать, особенно без подклассовdict ( концепция, с которой я довольно хорошо знаком).

Ответы на вопрос(5)

Ваш ответ на вопрос