save dictionary for later use?

castironpi castironpi at gmail.com
Fri May 16 18:36:47 EDT 2008


On May 16, 5:19 pm, castironpi <castiro... at gmail.com> wrote:
> On May 16, 4:29 pm, "bruno.desthuilli... at gmail.com"
>
>
>
>
>
> <bruno.desthuilli... at gmail.com> wrote:
> > On 16 mai, 22:24, globalrev <skanem... at yahoo.se> wrote:
>
> > > On 16 Maj, 21:22, jay graves <jaywgra... at gmail.com> wrote:
>
> > > > On May 16, 2:17 pm, globalrev <skanem... at yahoo.se> wrote:
>
> > > > > i extract info from one file and put it into a dictionary.
> > > > > i want to save that dictionary for later use, how do i do that?
> > > > > might save a list of dictionaries or a list of classobjects too if
> > > > > there is any difference.
>
> > > > use the 'pickle' module.http://docs.python.org/lib/module-pickle.html
>
> > > > ...
> > > > Jay Graves
>
> > > pickle.dumps(mg)
> > > pickle.load(mg)
>
> > > 'dict' object has no attribute 'readline'
> > > dumps load(well i dont know but i get no complaint but running load
> > > generates that error)
>
> > What about *READING THAT FUCKING MANUAL* ?
>
> >http://docs.python.org/lib/node316.html
> > """
> > dump(obj, file[, protocol])
> >     Write a pickled representation of obj to the open file object
> > file. This is equivalent to Pickler(file, protocol).dump(obj).
>
> >     If the protocol parameter is omitted, protocol 0 is used. If
> > protocol is specified as a negative value or HIGHEST_PROTOCOL, the
> > highest protocol version will be used.
>
> >     Changed in version 2.3: Introduced the protocol parameter.
>
> >     file must have a write() method that accepts a single string
> > argument. It can thus be a file object opened for writing, a StringIO
> > object, or any other custom object that meets this interface.
>
> > load(file)
> >     Read a string from the open file object file and interpret it as a
> > pickle data stream, reconstructing and returning the original object
> > hierarchy. This is equivalent to Unpickler(file).load().
>
> >     file must have two methods, a read() method that takes an integer
> > argument, and a readline() method that requires no arguments. Both
> > methods should return a string. Thus file can be a file object opened
> > for reading, a StringIO object, or any other custom object that meets
> > this interface.
>
> >     This function automatically determines whether the data stream was
> > written in binary mode or not.
> > """
>
> > Example use:
>
> > >>> d = dict(a=1, b=2)
> > >>> f = open("mydict.dat", "w")
> > >>> pickle.dump(d, f)
> > >>> f.close()
> > >>> f = open("mydict.dat")
> > >>> d2 = pickle.load(f)
> > >>> f.close()
> > >>> d2 == d
> > True
> > >>> d2
> > {'a': 1, 'b': 2}
>
> > Now : it's not the first time - in a couple days - that you ask a
> > question that you wouldn't have asked if you had taken a couple
> > minutes doing the tutorial and/or reading the doc. This newsgroup is
> > *very* tolerant (in most other places on usenet, you would have get a
> > raw RTFM on the first question, and a PLONK on the second), but there
> > are still limits, and as far as I'm concerned you're not far from
> > them. So do yourself and the world a favour, read this:http://catb.org/~esr/faqs/smart-questions.html
>
> > and then this:http://docs.python.org/tut/tut.html
>
> > and next time someone points you to a specific module, have mercy and
> > *read* the doc before posting.
>
> > As far as I'm concerned, I won't anwser any of your questions unless
> > it's obvious that you have followed these advices (but then I'll be
> > happy to help if I can).- Hide quoted text -
>
> > - Show quoted text -
>
> There is 'shelve'.  It's just that you have to re-update each entry
> when you modify, so it's just similarity you'd be saving.- Hide quoted text -
>
> - Show quoted text -

Now a shelf of filenames could be valuable.



More information about the Python-list mailing list