cerr wrote:
> Hi,
> 
> Can I somehow use pickle.dump() to store a dictionary of lists to a file?
> I tried this:
> 
>     >>> import pickle
>     >>> mylist = []
>     >>> mydict = {}
>     >>> mylist = '1','2'
>     >>> mydict['3'] = mylist
>     >>> fhg = open ("test", 'w')
>     >>> pickle.dump(fhg,mydict)
>     Traceback (most recent call last):
>       File "<stdin>", line 1, in <module>
>       File "/usr/lib/python2.7/pickle.py", line 1370, in dump
>         Pickler(file, protocol).dump(obj)
>       File "/usr/lib/python2.7/pickle.py", line 203, in __init__
>         self.write = file.write
>     AttributeError: 'dict' object has no attribute 'write'
>     >>> print mydict
>     {'3': ('1', '2')}
> 
> or should I just write my own dump function that can hanle thiS?
> 
> Please advise!
> 
> Thanks,
> Ron

I think you have the parameters for dump backwards.

According to API http://docs.python.org/2/library/pickle.html#pickle.dump
the format is: pickle.dump(obj, file, protocol=None)

Which means you need to use: pickle.dump(mydict, fhg)


Ramit



This email is confidential and subject to important disclaimers and conditions 
including on offers for the purchase or sale of securities, accuracy and 
completeness of information, viruses, confidentiality, legal privilege, and 
legal entity disclaimers, available at 
http://www.jpmorgan.com/pages/disclosures/email.  
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to