先了解两个内容:
- 定义字典的两种方法:
d1 = { ‘name’ :‘zzl’} #方法一
d2 = dict( name = 'zzl' ) #方法二
2. __dict__()方法不记录类的属性值。
class People():
name = 'zzl'
age = 18 def __init__(self):
self.gender = 'male' p = People()
print(p.__dict__)
执行结果: { 'gender' : 'male' }
关于dict()的另一种用法:
class People():
name = 'zzl'
age = 18 def __init__(self):
self.gender = 'male'
def keys(self):
return {'name','age','gender'}
def __getitem__(self, item):
return getattr(self,item) p = People()
d = dict(p)
print(d)
执行结果:{'name': 'zzl', 'age': 18, 'gender': 'male'}
将类的实例传入到dict()中,得到一个字典,键和值分别为实例的属性名和值。
一种序列化的方案。