我想跟踪python程序生命周期中某些数据结构(字典(中发生的更改。我们可以通过拍摄快照或备份来实现这一点。备份并不"内存友好",因为它们需要将整个结构存储在内存中。因此,实现这一点的巧妙方法是拍摄快照(类似于Git暂存文件的方式(
- python中是否有提供此功能的模块
- 如果没有,是否有任何已知的算法可以在不复制数据的情况下描述数据结构的变化
我不想使用数据库。
您可以使用pickle来保存python数据结构。如果您使用日期(时间(模块来创建文件名,您会得到类似快照的东西:
import pickle
import datetime
def backup(your_data):
with open(f"backup {datetime.datetime.now()}", "wb") as file:
pickle.dump(your_data, file)
要获取数据,请使用pickle.load方法。