使用dict预期的dict子类

时间:2011-10-13 07:47:36

标签: python inheritance polymorphism xml-rpc

函数A获取普通的dict作为参数并进行一些处理。

def A(dict):
    ...
    return

现在我有一个继承自普通dict类的类:

class MyDict(dict):
    def __getitem__(self, key):
        return dict.__getitem__(self, key)
    def __setitem__(self, key, val):
        dict.__setitem__(self, key, val)

然后我可以使用MyDict而不是普通的dict作为:

my_dict = MyDict()
A(my_dict)

具体来说,在我的情况下,A执行xml-rpc序列化,并且错误说无法编组MyDict。

1 个答案:

答案 0 :(得分:2)

这完全取决于A()的作用。如果它只是调用映射协议,那么你可以使用它没有问题。如果需要有关传递类型的更多详细信息,则可能无法正常运行。