这是一个我怀疑很常见的问题,但我还没有找到解决方案.我想要的是非常简单,看似技术上可行:我有一个简单的python类,我想将它存储在光盘,实例和定义中,在一个文件中.Pickle将存储数据,但它不存储类定义.有人可能会说类定义已存储在我的.py文件中,但我不想要一个单独的.py文件; 我的目标是拥有一个自包含的单个文件,我可以用一行代码弹回我的命名空间.
所以,是的,我知道这可能使用两个文件和两行代码,但我希望它在一个文件和一行代码中.原因是因为我经常发现自己处于这种状况; 我正在研究一些大数据集,在python中操作它,然后将我的切片,切块和转换后的数据写回一些预先存在的目录结构.我不想要的是将这些数据目录与错误命名的python类存根一起丢弃以保持我的代码和数据相关联,而我想要的更少是跟踪和组织定义的所有这些小的ad hoc类的麻烦在脚本中独立运行.
因此,代码可读性方面的便利性不是很大,而是代码和数据之间的轻松和不可理解的关联.这对我来说似乎是一个有价值的目标,尽管我知道它在大多数情况下都不合适.
所以问题是:是否有一个包或代码片段做了这样的事情,因为我似乎找不到任何东西.
该泡菜文件指出:“当类实例腌制,他们班上的数据不与他们一起腌制,只有实例数据腌。” 谁能提供在腌制和解腌时包括类变量和实例变量的配方?