Lists of lists and tuples, and finding things within them

Daniel Nogradi nogradi at
Thu Nov 9 19:06:52 CET 2006

> I have a program that keeps some of its data in a list of tuples.
> Sometimes, I want to be able to find that data out of the list.  Here is
> the list in question:
> [('password01', 'unk'), ('host', ''), ('port', '1234'),
> ('character01', 'Thessalus')]
> For a regular list, I could do something like x.index('host') and find
> the index of it, but I don't know how to do this for a tuple where the
> data item isn't known in advance.  For example, I want to get the "host"
> entry from the list above; but I can only retrieve it if I know what it
> contains (e.g., x.index(('host', ''))).
> Is there a better way to do this than a construct similar the following?
> for key, value in x:
>     if key == 'host':
>         print value

If I were you I would use a dictionary for such a thing:

mydict = dict( password01='unk', host='', port='1234',
character01='Thessalus' )

And then you would look up host by:

mydict[ 'host' ]


More information about the Python-list mailing list