Python自定义类实现字典dict功能的方法
本文介绍如何在Python中通过继承collections.UserDict来自定义字典类。通过重写__missing__、__contains__、__setitem__和__getattr__等方法,实现类似字典的访问方式,包括属性访问和键值对操作。
示例代码如下:
import collections
class Mydict(collections.UserDict):
def __missing__(self, key):
if isinstance(key, str):
raise KeyError(key)
return self[str(key)]
def __contains__(self, key):
return str(key) in self.data
def __setitem__(self, key, item):
self.data[str(key)] = item
def __getattr__(self, key):
return self.data[str(key)]
if __name__ == '__main__':
mydict = Mydict((('a',1),('c',('d',3)),('b',2)))
print(mydict)
print(mydict.a)
print(mydict['a'])
以上就是本文关于Python自定义类实现字典dict功能的全部内容,希望对大家学习Python有所帮助。如果您觉得有用,请分享给更多需要的朋友。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









