-1

私はPythonを初めて使用します。私はファイルを持っていますdata.pkl。私がやりたいのは、ファイルからデータを取得することです。http://docs.python.org/library/pickle.html、11.1.7の例を見て、まさにそれを試しました。私のコードは次のようになります。

import pprint, pickle

pkl_file = open('data.pkl', 'rb')

data1 = pickle.load(pkl_file)
pprint.pprint(data1)

pkl_file.close()

しかし、それは私にエラーを与えています:

Traceback (most recent call last):
  File "/home/sadiksha/workspace/python/test.py", line 5, in <module>
    data1 = pickle.load(pkl_file)
  File "/usr/lib/python2.7/pickle.py", line 1378, in load
    return Unpickler(file).load()
  File "/usr/lib/python2.7/pickle.py", line 858, in load
    dispatch[key](self)
  File "/usr/lib/python2.7/pickle.py", line 966, in load_string
    raise ValueError, "insecure string pickle"

誰かが私がここで間違っていることを教えてもらえますか?

4

1 に答える 1

2

ピクルスファイルが正しく書き込まれていないか(「wb」を指定)、ファイルが何らかの理由で破損しているようです。独自のピクルスファイルを作成して、それを読み戻してみてください。これでうまくいくはずです。

指定されたピクルスファイルは間違いなく破損しています。

于 2012-05-29T10:48:10.617 に答える