newbie question: how to read back the dictionary from a file?

7stud bbxx789_05ss at yahoo.com
Mon Apr 16 12:10:58 CEST 2007


On Apr 16, 4:03 am, "lancered" <wang... at gmail.com> wrote:
> Hi Dear all,
>
> I have some data here in the form of a dictionary, called "vdic". Then
> I write them to a data file "f" using   the write function as
> f.write(str(vdic)).  The keys of this dictionary are integers and
> values are float numbers. Something like this:
>
> { 1: 0.00951486513347, 2: 0.0388123556019, ... ...}
>
> Now, I want to read these data back in another function.  Of course, I
> could parse the string little by little, e.g, first read a "{", then
> loop read a int, then read a ":", then a float etc etc... Since it is
> written out with standard python builtin functions,  I guess there may
> be some more direct method than this, say a function in some modules?
> Could someone give me a hint?

Try:

import shelve

s = shelve.open("newFile.dat")
s["d"] = {"red":2, 3:"blue", 2.5:"x"}
s.close()

s = shelve.open("newFile.dat")
print s["d"]
my_dict = s["d"]
print my_dict[2.5]




More information about the Python-list mailing list