Vineet Jain (gmail) wrote:

I’m trying to load pickled user defined classes from iron python. The pickled object was created using cpython 2.5 on an ubuntu box. I can load them fine with cpython 2.5 on a windows box. However when I load them from ironpython I get the following incomplete stack trace:

c:\trading\pytrade\modules\apiscripts\models>ipy test_pickle.py

Traceback (most recent call last):

File "test_pickle.py", line 20, in test_pickle.py

File "test_pickle.py", line 13, in loadTrades

File "c:\Program Files\IronPython 2.0.1\Lib\pickle.py", line 1370, in load

File "c:\Program Files\IronPython 2.0.1\Lib\pickle.py", line 858, in load

KeyError: [

Any ideas on how I can go about debugging this? Is pickle.load of user defined classes from cPython supported?



That isn't enough information to diagnose the problem. The short answer is that yes, IronPython does support the unpickling of user defined classes created in CPython:

C:\compile>python
Python 2.5.2 (r252:60911, Feb 21 2008, 13:11:45) [MSC v.1310 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from test import Test
>>> from pickle import dumps
>>> t = Test()
>>> open('instance.pkl', 'wb').write(dumps(t))
>>>

C:\compile>"C:\Program Files (x86)\IronPython 2.0.1\ipy.exe"
IronPython 2.0 (2.0.0.0) on .NET 2.0.50727.3074
Type "help", "copyright", "credits" or "license" for more information.
>>> import test
>>> from pickle import loads
>>>
>>> t = loads(open('instance.pkl').read())
>>> t
<Test object at 0x000000000000002B>
>>>

In the example above the module test.py contains only:

class Test(object):
pass

All the best,

Michael


Thanks,

Vineet

------------------------------------------------------------------------

_______________________________________________
Users mailing list
[email protected]
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com


--
http://www.ironpythoninaction.com/
http://www.voidspace.org.uk/blog


_______________________________________________
Users mailing list
[email protected]
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

Reply via email to