Jorge Louis de Castro wrote:
> Hi,
> 
> [Sorry for the repost, there was a typo previously]
> 
> I think I may have misinterpreted the syntax of cPickle. I have dumped data 
> onto a file using:
> 
> output = codecs.open(".\\"+self.filename, "ab")

Use plain open(), not codecs.open(), as you are not writing encoded character 
data. Why are you opening for append? Is the data in the file already? Are you 
skipping over it on the read? Otherwise use "wb" instead of "ab".

> cPickle.dump(self.terms, output)
> cPickle.dump(self.username, output)
> cPickle.dump(self.age, output)
> cPickle.dump(self.gender, output)
> cPickle.dump(self.totalMsgs, output)
> cPickle.dump(self.occurrences, output)
> 
> I thought I could unpickle this using the load feature, something like:
> inFile = codecs.open(".\\"+self.filename, "r")

Use open() and mode "rb".
> cPickle.load(self.terms, inFile)

Shoud be 
self.username = cPickle.load(inFile) etc. I think you will get a TypeError 
here...

Kent

> cPickle.load(self.username, inFile)
> cPickle.load(self.age, inFile)
> cPickle.load(self.gender, inFile)
> cPickle.load(self.totalMsgs, inFile)
> cPickle.load(self.occurrences, inFile)
> 
> Which would unpickle the data onto the variables. It does not work like 
> that, unfortunately. When I try reading the whole file I only get the first 
> object read as output.
> Any ideas how to achieve what this?
> 
> chrs
> j.
> 
>>
>>_______________________________________________
>>Tutor maillist  -  Tutor@python.org
>>http://mail.python.org/mailman/listinfo/tutor
> 
> 
> 
> _______________________________________________
> Tutor maillist  -  Tutor@python.org
> http://mail.python.org/mailman/listinfo/tutor
> 

_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to