Message5956
pickle and cPickle will happily dump a lambda, but on
load, both report:
SystemError: Failed to import class <lambda> from
module __main__
Seen on Py 2.1 & 1.5.2
>>> f = lambda x: x in (1,2,3)
>>> o = cPickle.dumps(f)
>>> f2 = cPickle.loads(o)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
SystemError: Failed to import class <lambda> from
module __main__
>>> o = pickle.dumps(f)
>>> f2 = pickle.loads(o)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "c:\python21\lib\pickle.py", line 951, in loads
return Unpickler(file).load()
File "c:\python21\lib\pickle.py", line 567, in load
dispatch[key](self)
File "c:\python21\lib\pickle.py", line 780, in
load_global
klass = self.find_class(module, name)
File "c:\python21\lib\pickle.py", line 790, in
find_class
raise SystemError, \
SystemError: Failed to import class <lambda> from
module __main__
|
|
| Date |
User |
Action |
Args |
| 2007-08-23 13:55:46 | admin | link | issue451547 messages |
| 2007-08-23 13:55:46 | admin | create | |
|