在Python 3中,UserDict.DictMixin
类已移至collections
模块。文档建议在其位置使用collections.MutableMapping
,但是这个抽象类没有提供DictMixin
做/做的许多方法。
是否有另一种(或更好的)方法来定义它们而不是抓取UserDict.Mixin
源的私有副本以便将其导入(或者可能只是将所需的部分复制)到我自己的类字典类中? / p>
答案 0 :(得分:3)
"多种方法"具体是__len__
和__iter__
所以额外的工作不是那么多。
def __len__(self):
return len(self.mylist)
def __iter__(self):
for i in self.mylist:
yield i
应该工作,我认为(虽然未经测试)。