【问题标题】:Python Pickle: what can cause stack index out of range error?Python Pickle:什么会导致堆栈索引超出范围错误?
【发布时间】:2010-06-12 21:50:57
【问题描述】:

我收到此错误:

  File "C:\Python26\lib\pickle.py", line 1374, in loads
    return Unpickler(file).load()
  File "C:\Python26\lib\pickle.py", line 858, in load
    dispatch[key](self)
  File "C:\Python26\lib\pickle.py", line 1075, in load_obj
    k = self.marker()
  File "C:\Python26\lib\pickle.py", line 874, in marker
    while stack[k] is not mark: k = k-1
IndexError: list index out of range

为什么会发生这种情况?

【问题讨论】:

  • 对不起,我已经想通了。没关系。
  • 如果其他人可能遇到问题,您应该自己发布答案并接受;如果不是,您可能应该删除问题

标签: python pickle


【解决方案1】:

“损坏的文件”是一般解释;一个最可能的原因是您忘记以'rb'(“读取二进制”)打开文件(在Windows中),并且酸洗是使用二进制协议完成的(即,除了旧的慢速默认协议0,ascii之外的任何协议只是,基本上只存在于遗留目的,制作更大的文件,并且有几个限制)。

【讨论】:

    【解决方案2】:

    回答:我试图在 Google App Engine 模型的未初始化字段上调用 ​​pickle.loads()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-21
      • 1970-01-01
      • 2022-11-18
      相关资源
      最近更新 更多