【问题标题】:`_pickle.UnpicklingError: the STRING opcode argument must be quoted``_pickle.UnpicklingError:必须引用 STRING 操作码参数`
【发布时间】:2015-11-24 01:49:03
【问题描述】:

我有一个文本文件,我正在尝试使用 python pickle 来挑选。

tx b'88877343430010000000000'
tx b'59343410000000000'
rx b'344454320000000004'

我正在使用以下 python 代码序列化文件。我收到以下错误。 _pickle.UnpicklingError: the STRING opcode argument must be quoted。我找不到泡菜文件有什么问题。

import six.moves.cPickle
file = open('test.txt', 'rb')        
loaded = six.moves.cPickles.load(file)

【问题讨论】:

  • 您是否尝试将文本文件unpickle 转换为 Python 对象?如果是这样,它是从哪里来的?如果它不是由与您使用的相同版本的 pickle 库生成的,那可能是不可能的。创建一个与您要加载的对象相似的对象,并使用cPickle.dumps(myObj)查看它的外观
  • 有人回答了吗?

标签: python pickle


【解决方案1】:

当您使用 cPickle.load() 时,您正在尝试将之前腌制的文件解压缩(反序列化)到 Python 对象中。

要将对象腌制(序列化)到文件中,您应该使用cPickle.dump()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-02
    相关资源
    最近更新 更多