0

我的几个 python 程序旨在

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

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

我的想法是,如果有可能编写一次由“源”文件生成的 dict() 以使 python 能够更快地读取/处理(我认为一种格式接近 RAM 中使用的格式)通过python),那会很棒。

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

谢谢你。

4

2 回答 2

4

是的,您可以marshal使用 dict,也可以使用pickle. 有关两者之间的区别,尤其是速度方面的区别,请参阅此问题

于 2012-08-10T21:20:45.650 回答
0

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

于 2012-08-10T22:20:35.900 回答