[Tutor] (de)serialization questions
alan.gauld at btinternet.com
Sat Oct 2 03:01:40 CEST 2010
"Albert-Jan Roskam" <fomcl at yahoo.com> wrote
> Maybe my main question is as follows: what permanent object is most
> suitable to
> store a large amount of entries (maybe too many to fit into the
> memory), which can be looked up very fast.
It depends on the nature of the object and the lookup but in general
a database would be the best solution. For special (heirarchical)
data an LDAP directory may be more appropriate.
Otherwise you are looking at a custom designed file structure.
> Eventually, I want to create two objects:
> 1-one to look up street name and city using zip code
> 2-one to look up zip code using street name, apartment number and
For this a simple relational database wouldbe best.
SQLlite should do and is part of the standard library.
It can also be used in memory for faster speed with smaller data sets.
> You suggest to simply use a file. I like simple solutions, but
> doesn't that, by
> definition, require a slow, linear search?
No, you can use random access provided yopu can relate the key to the
location - thats what databases do for you under the covers.
> Funny you should mention sqlite: I was just considering it
> yesterday. Gosh,
> Python has so much interesting stuff to offer!
Sqlite operating in-memory would be a good solution for you I think.
You can get a basic tutorial on Sqllite and python in the databases
of my tutorial...
Author of the Learn to Program web site
More information about the Tutor