我有一个包含属性字典current_properties
的类,可以添加的属性及其对应的数据类型在valid_properties
字典中预定义:
self.valid_properties = {'name': str, 'number': int, 'point_data': list}
self.current_properties = {'name': 'user_1'}
现在,我想编写一个方法,将每个新添加的属性初始化为其对应的空值。例如number
是int
,添加后,新的状态应该是:
self.current_properties = {'name': 'user_1', 'number': 0}
如果我添加 point_data
新状态应该是:
self.current_properties = {'name': 'user_1', 'number': 0, 'point_data':[]}
我怎样才能完成这件事?
您可以使用要插入的任何键从 valid_properties
中查找类型,然后使用 ()
实例化该类型的对象。
>>> valid_properties = {'name': str, 'number': int, 'point_data': list}
>>> current_properties = {'name': 'user_1'}
>>> current_properties
{'name': 'user_1'}
>>> current_properties['number'] = valid_properties['number']()
>>> current_properties
{'number': 0, 'name': 'user_1'}
我是一名优秀的程序员,十分优秀!