[slots使用]节省内存优化措施
class DataItem(object):
__slots__ = ['name', 'age', 'address'] # 指定自身属性
def __init__(self, name, age, address):
self.name = name
self.age = age
self.address = address
# 会影响dict方法 激活slots会禁止创建其他所有元素,包括dict
def toJSON(self): # 不起作用
return json.dumps(self.__dict__)
def toJSON(self):
data = dict()
for var in self.__slots__:
data[var] = getattr(self, var)
return json.dumps(data)