pickle.load failing with ValueError: insecure string pickle

carroll at tjc.com carroll at tjc.com
Tue Feb 11 10:10:48 CET 2003

I'm a relatively new Python user, using Pickle for the first time.
pickle.load is dying with "ValueError: insecure string pickle"

The object I'm trying to pickle is a fairly large (15,443 entries)
dictionary of objects.  The objects are fairly straightforward -- all
the attributes are relatively short strings.

Here's my pickling/unpickling code (all together as a test case):

picklefile = "handict.pickle"
print "dumping..."
pickleout = open(picklefile,"w")
print "dumping done."
hanchars={} #wipe out hanchars
print "recovering..."
picklein = open(picklefile, "r")
hanchars = pickle.load(picklein)
print "recovery done."

What I see:

dumping done.
Traceback (most recent call last):
  File "test01.py", line 65, in ?
    hanchars = pickle.load(picklein)
  File "C:\Python22\lib\pickle.py", line 982, in load
    return Unpickler(file).load()
  File "C:\Python22\lib\pickle.py", line 597, in load
  File "C:\Python22\lib\pickle.py", line 667, in load_string
    raise ValueError, "insecure string pickle"
ValueError: insecure string pickle


I want to use pickle because my dictionary is derived from a 25-meg
input file.  It's more efficient to just process it once and pickle
the dictionary for future use.

More information about the Python-list mailing list