Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 重新读取另存为文本文件的词典结构,再次读取为词典_Python_Dictionary_Pickle - Fatal编程技术网

Python 重新读取另存为文本文件的词典结构,再次读取为词典

Python 重新读取另存为文本文件的词典结构,再次读取为词典,python,dictionary,pickle,Python,Dictionary,Pickle,我分析了一个大语料库,并将所需的数据保存在字典结构中。但是在我的代码结束时,我把它保存为一个.txt文件,因为我需要手动检查一些东西。现在在我工作的另一部分,我需要那本字典作为我的输入。我想知道除了打开文本文件并将其作为字典结构重新放置外,是否还有其他方法。如果我能操纵我的另一半保持原样。泡菜对我的案子合适吗?还是我完全走错了路?抱歉,如果我的问题太幼稚,我对python真的很陌生,而且我还在学习它。从 为了便于阅读 如果您没有任何互操作性需求(即,您只需要将数据与Python一起使用),并且二

我分析了一个大语料库,并将所需的数据保存在字典结构中。但是在我的代码结束时,我把它保存为一个.txt文件,因为我需要手动检查一些东西。现在在我工作的另一部分,我需要那本字典作为我的输入。我想知道除了打开文本文件并将其作为字典结构重新放置外,是否还有其他方法。如果我能操纵我的另一半保持原样。泡菜对我的案子合适吗?还是我完全走错了路?抱歉,如果我的问题太幼稚,我对python真的很陌生,而且我还在学习它。

从 为了便于阅读

如果您没有任何互操作性需求(即,您只需要将数据与Python一起使用),并且二进制格式也可以,那么可以使用cPickle,它为您提供了非常快速的Python对象序列化

如果您想要互操作性,或者您想要一种文本格式来存储您的数据,可以使用JSON(或者其他一些适当的格式,具体取决于您的约束)

根据上面的内容,我猜您希望
cPickle
over
json

然而,我发现另一篇文章很有趣:,它证明了
json
pickle
快得多(作者在文章中指出
cPickle
pickle
快,但仍然比
json
慢)

这个答案比较了6个不同的库

  • 腌菜
  • cPickle
  • json
  • 辛普莱克森
  • 乌斯琼
  • 亚吉
此外,如果使用pypy,
json
可以非常快


最后,一些最近的评测数据。

pickle是一种方法如果人类可读性很重要,那么json可能更合适。你不能通过在记事本中打开pickle文件来“手动检查某些内容”。@json不,不,我这么做了,我的意思是我已经解析了语料库,现在我有了作为文本文件的词典,一旦我有了它,就够了。我可以保留它,现在也许我可以重新编写我的其他代码,以便在其他时间进行解析,并将字典保留为我工作的其他部分。我不知道我是否清楚,我的意思是手动检查的东西只有一次,我已经得到了我想要的。我只是不想再读一次作为输入文本文件并将其转换为字典因为这对我来说很复杂。你说“现在我把字典作为文本文件”是什么意思?你是如何保存这本词典的?谢谢你的回答。事实上,我不介意它是否快,我正在试图找到一种更清晰的方法,这对初学者来说更容易使用。现在我来回顾一下你的建议。祝你@Pari好运!另外,我会选择json,因为它是普遍可用的、可读的并且性能相当好。