>>> d = dict(a=1,b=4)
>>> d.a
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-16-e586b691db67> in <module>
----> 1 d.a
AttributeError: 'dict' object has no attribute 'a'
我们知道普通字典是不可以直接用.来访问字典的键值对,但是利用下面这个子类就可以啦
class Dict(dict):
__setattr__ = dict.__setitem__
__getattr__ = dict.__getitem__
d = dict(a=1,b=4)
D = Dict(d)
本文介绍了一种在Python中使用自定义字典类实现属性访问字典元素的方法,通过子类化内置dict并重写__getattr__和__setattr__方法,使得字典的键值对可以通过点操作符进行访问。
513

被折叠的 条评论
为什么被折叠?



