Python微信订餐小程序课程视频
https://edu.csdn.net/course/detail/36074
Python实战量化交易理财系统
https://edu.csdn.net/course/detail/35475
技术背景
当我们在Python中写一个class时,如果有一部分的成员变量需要用一个字典来命名和赋值,此时应该如何操作呢?这个场景最常见于从一个文件(比如json、npz之类的文件)中读取字典变量到内存当中,再赋值给一个类的成员变量,或者已经生成的实例变量。
使用__dict__定义成员变量
在python中直接支持了__dict__.update()
这样的方法来操作,避免了对locals()、vars()和eval()函数的使用,我们可以直接看这样的一个案例:
In [1]: dict\_a = {'a':1, 'b':2}
In [2]: dict\_b = {'c':3}
In [3]: class D(object):
...: def \_\_init\_\_(self):
...: self.d = 4
...: self.\_\_dict\_\_.update(dict\_a)
...: self.\_\_dict\_\_.update(dict\_b)
...:
In [4]: new\_D = D()
In [5]: n