如何使 python 实例化对象可重用



我的几个 Python 程序旨在

  1. 格式转换为哈希表(因此,我是一个 dict() 瘾君子 ;-) )"源"文本文件中的一些信息,以及

  2. 以使用该表修改"目标"文件。我担心的是,我通常处理的"源"文件可能非常大(几GB),因此解析时间超过10秒,我需要多次运行该程序。总而言之,我觉得每次需要修改新的"目标"时重新加载相同的大文件是一种浪费。

我的想法是,如果有可能以一种 python 能够更快地读取/处理的方式编写从"源"文件制作的 dict()(我认为一种接近 python 在 RAM 中使用的格式),那就太好了。

有没有可能实现这一目标?

谢谢。

是的,你可以marshal字典,或者你可以使用pickle。有关两者之间的区别,尤其是在速度方面,请参阅此问题。

pickle

此类事情的常用解决方案,但是如果您看到能够编辑保存的数据的任何价值,并且如果字典仅使用字符串和数字等简单类型(嵌套字典或列表也可以),您可以简单地将字典的repr()写入文本文件, 然后使用 eval() 将其解析回 Python 字典(或者,更好的是,ast.literal_eval() )。

最新更新