Dictionary Statements

The for Statement. We can't meaningfully iterate through the elements in a dict, since there's no implicit order. Worse, it isn't obvious that we want to iterate through the keys or through the values in the dict.

Consequently, we have three different ways to visit the elements in a dict, all based on three dict method functions. Here are the choices:

  • The key:value pairs. We can use the items method to iterate through the sequence of 2-tuples that contain each key and the associated value.

  • The keys. We can use the keys method to iterate through the sequence of keys.

  • The values. We can use the values method to iterate throught he sequence of values in each key:value pair.

Here's an example of using the key:value pairs. This relies on the tuple-based for statement that we looked at in the section called “Tuple Statements”. We'll iterate through the dict, update it, and iterate through it a second time. In this case, coincidentally, the new key-value pair wound up being shown at the end of the dict.

>>> 
myBoat = { "NAME":"KaDiMa", "LOA":18, 
 "SAILS":["main","jib","spinnaker"] }

>>> 
for key,value in myBoat.items():
...     print key, " = ", value



LOA  =  18
NAME  =  KaDiMa
SAILS  =  ['main', 'jib', 'spinnaker']
>>> 
myBoat['YEAR']=1972

>>> 
for key,value in myBoat.items():
...     print key, " = ", value



LOA  =  18
NAME  =  KaDiMa
SAILS  =  ['main', 'jib', 'spinnaker']
YEAR  =  1972


The del Statement. The del statement removes items from a dict. For example

>>> 
i = { "two":2, "three":3, "quatro":4 }

>>> 
del i["quatro"]

>>> 
print i

{'three': 3, 'two': 2}
            

In this example, we use the key to remove the item from the dict.

The member function, pop, does this also.