Python中的自定义实例取消勾选:是应该更新对象字典,还是替换它?

Python中的自定义实例取消勾选:是应该更新对象字典,还是替换它?,python,dictionary,pickle,Python,Dictionary,Pickle,在定义某个类的对象应该如何取消勾选时,我认为这样做是安全的 def __setstate__(self, dict_returned_by_pickle): self.__dict__.update(dict_returned_by_pickle) 当pickle状态是字典时。这是我在一本书中看到的 然而,这是否是一种安全措施,以防调用设置状态时self.\uuuu dict\uuuuuu包含一些数据?还是说它只是比你做的更快更干净 self.__dict__ = dict_retur

在定义某个类的对象应该如何取消勾选时,我认为这样做是安全的

def __setstate__(self, dict_returned_by_pickle):
    self.__dict__.update(dict_returned_by_pickle)
当pickle状态是字典时。这是我在一本书中看到的

然而,这是否是一种安全措施,以防调用设置状态时self.\uuuu dict\uuuuuu包含一些数据?还是说它只是比你做的更快更干净

self.__dict__ = dict_returned_by_pickle

这迫使旧的自我被垃圾收集?

替换它是好的。这就是政府所做的


如果没有其他引用,原始dict将被垃圾收集。

替换它是可以的。这就是政府所做的

如果没有其他引用,原始dict将被垃圾收集