目前我知道的有两种方法:
1 定义的类继承dict类
例如
class A(dict): pass
a = A()
a[‘name‘] = 12
2 给自定义的类添加
__setitem__() __getitem__()方法
class A: def __init__(self, cfg={}): <strong><span style="color:#ff0000;">self.cfg = cfg</span></strong> def __setitem__(self, key, value): <span style="color:#ff0000;">self.cfg[key] = value</span> def __getitem__(self, key): <span style="color:#ff0000;">return self.cfg[key]</span> a = A() a['b'] = 2 print(a['b'])输出:
2 [Finished in 0.0s]也就是给类添加个字典类对象,将 key,value 存储到这个里面。
通过这两种方法我们都可以将普通对象像 字典类对象一样使用。
第二种方法是在学习 tkinter时发现这种用法的,在网上没搜到方法,看其源码找到的这个方法。
原文地址:http://blog.csdn.net/jiangxiaoma111/article/details/39212835