- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在使用 cPickle 将结构数据转换为数据流格式并将其传递给库。我要做的是从手动写入的文件名“targetstrings.txt”中读取文件内容,并按照以下方式将文件内容转换为 Netcdf 库需要的格式,
注意:targetstrings.txt 包含拉丁字符
op=open("targetstrings.txt",'rb')
targetStrings=cPickle.load(op)
Netcdf 库将内容作为字符串。加载文件时出现以下错误,
cPickle.UnpicklingError: invalid load key, 'A'.
请告诉我如何纠正这个错误,我用谷歌搜索但没有找到合适的解决方案。
任何建议,
最佳答案
pickle 不是用于读取/写入通用文本文件,而是将 Python 对象序列化/反序列化到文件。如果你想读取文本数据,你应该使用 Python's usual IO functions .
with open('targetstrings.txt', 'r') as f:
fileContent = f.read()
如果库看起来只是想要一个字符串列表,将每一行作为一个列表元素,您只需要做:
with open('targetstrings.txt', 'r') as f:
lines=[l for l in f]
# now in lines you have the lines read from the file
关于python - cPickle.load( ) 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10316037/
如何让此代码在重新打开时记住秤的最后位置? import Tkinter import cPickle root = Tkinter.Tk() root.sclX = Tkinter.Scale(ro
我正在尝试使用 cPickle 加载一个文件,如下所示, import cPickle cPickle.load(open('test', 'rb')) 但是,我得到这个错误, -----------
我有一个列表列表,每个子列表看起来像这样: a = [datetime.datetime(2012, 2, 1), datetime.datetime(2012, 2, 2), 'string', 4
我浏览了相关 cPickle 问题的各种回复,但似乎没有一个有帮助。使用 cloudpickle 代替 cPickle 也没有效果。 我有一个名为 MyModule 的模块,它定义了一个 MyClas
我有大约 80 万张 256x256 RGB 图像,总计超过 7GB。 我想将它们用作卷积神经网络中的训练数据,并想将它们连同它们的标签一起放入 cPickle 文件中。 现在,这占用了大量内存,以至
我正在使用 cPickle 序列化用于日志记录的数据。 我希望能够将我想要的任何东西放入对象中,然后将其序列化。通常这对 cPickle 没问题,但遇到了一个问题,我想序列化的对象之一包含一个函数。这
我正在使用 cPickle 将字典对象存储到文件中,并且无法获取除第一个条目之外的任何其他条目。最初,文件 tweets.pkl 为空,并且引发 EOFError。我确信这与它有关。谢谢 #!/usr
在我的脚本中,我尝试使用cPickle保存字典。一切工作正常,除了加载的字典已经修改每个键。我的字典看起来像:{'a':[45,155856,26,98536], 'b':[88,68,9454,78
我希望能够有一系列使用相同 pickle 文件的嵌套循环。见下文: def pickleRead(self): try: with open(r'myfile', 'rb')
cPickle.dump(object,file) 总是在文件末尾转储。有没有办法在文件中的特定位置转储?我希望下面的代码片段能够工作 file = open("test","ab") file.se
我有一个 python 程序,我想从 cmd 提示符运行,但每次我尝试时,它总是给我一个错误“NameError: name cPickle is not defined”。 我使用的是 python
你能帮我实现这个例子吗? 如果序列化字典存在,我想加载它,修改它并再次转储它。我认为我用于打开文件的模式有问题,但我不知道正确的方法。 import os import cPickle as pick
python 对象是字符串和数字的嵌套列表。 文件被打开以写入“w”(不是“wb”)但 cPickle 被告知使用 protocol=1(所以二进制)。 序列化和反序列化代码在 Linux 上运行良好
我意识到答案很可能是“否”! 基本上,我有一个表示正方形网格的图(节点和边类型);每个节点对象都包含对该节点有边的每个其他节点的引用,这似乎意味着当使用 cPickle.dump 序列化图形时,它以深
我有一个名为 classifier.pkl 的 pickled 文件,我正试图将其加载到另一个模块中。但是,我收到一个我不明白的错误。 我要 pickle 的代码: features = ['bob'
我将运行代码,将大量(~1000)个相对较小(50 个键:值对字符串)的字典写入日志文件。我将通过一个自动执行此操作的程序来完成此操作。我正在考虑运行如下命令: import random impor
我想在文件中保存一个 pickle.dumps() 结果,每行一个结果,如下例所示。然后当我读取文件时加载行时,我发现相同的结果包含一个换行符。 数据,由制表符分隔: 20120305\txxxxx\
我正在考虑创建像 dbms 引擎这样的持久存储的想法,与直接 cPickling 对象和/或使用搁置模块相比,创建自定义二进制格式有什么好处? 最佳答案 Pickling 是一个双面硬币。 一方面,您
有没有人能解释testLookups() 下的注释 code snippet ? 我已经运行了代码,确实评论说的是真的。但是我想了解为什么它是真的,即为什么 cPickle 根据引用方式为同一对象输出
我是 Python 新手。我正在将别人的代码从 Python 2.X 改编到 3.5。该代码通过 cPickle 加载文件。我将所有出现的“cPickle”更改为“pickle”,因为我知道 pick
我是一名优秀的程序员,十分优秀!