Here we are in an Eclipse pydev console, running Python 3.1.2. For the most part, everything is working great.
However... >>> import sys; print('%s %s' % (sys.executable or sys.platform, sys.version)) C:\Python31\python.exe 3.1.2 (r312:79149, Mar 21 2010, 00:41:52) [MSC v.1500 32 bit (Intel)] >>> import pickle >>> class Example: ... def __init__(self): ... self.name = "Hello" ... def __repr__(self): ... return "an Example object named {}".format(self.name) ... ... >>> obj = Example() >>> obj an Example object named Hello Note that I'm opening in binary, like I'm supposed to with this latest protocol: >>> f = open("testpickle.pkl",'wb') Should be able to do this, no problemo: >>> pickle.dump(obj, f) Traceback (most recent call last): File "<console>", line 1, in <module> File "C:\Python31\lib\pickle.py", line 1354, in dump Pickler(file, protocol, fix_imports=fix_imports).dump(obj) _pickle.PicklingError: Can't pickle <class 'Example'>: attribute lookup builtins.Example failed The above works fine in "naked Python" 3.1.2 by the way. So this could be a problem with Eclipse / Pydev and/or user error. What am I missing? Just normal data structures work: >>> test = [1,2,3] >>> pickle.dump(test,f) >>> f.close() >>> Any other Eclipse users out there who can at least duplicate this weirdness? Kirby Urner in Portland "Keep Portland Weird" Oregon -- http://mail.python.org/mailman/listinfo/python-list