<davidwil...@safe-mail.net> wrote

i would like to understand how dictionaries work.

They work like a lookup table.
You provide a key and lookup the corresponding value
in the dictionary. So to implement a traditional language
dictionary the keys would be words and the values would
be a list of definitions.

You read them by placing the key in square brackets,
or by using the get() method:

for example:
my_lst = [{'code': 'aaa', 'name': 'a name'}, {'code': 'bbb', 'name': 'b name'}]

my_lst[0]['code']   -> 'aaa'
my_lst[0].get('code', 0)    -> 'aaa'  or 0 if 'aaa' does not exist as a key

You can write to them using the [] notation too:

my_lst[0]['name'] = 'A new name' changes the value for name in the first dictionary.

my_code = 'aaa'
from the above i would like to compare my_code and return the
dictionary which has code == my_code

Vince has shown you one way, this is another way:

def findDict(value, dictList):
  for dct in dictList:
      if dct.get('code', '') == my_code
         return dct

HTH,


--
Alan Gauld
Author of the Learn to Program web site
http://www.alan-g.me.uk/

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

Reply via email to