Dictionaries
Dictionaries are incredibly useful objects that allow us to map objects directly to other objects. An empty object with attributes to it is a sort of dictionary; the names of the properties map to the property values. This is actually closer to the truth than it sounds; internally, objects normally represent attributes as a dictionary, where the values are properties or methods on the objects. Even the attributes on a module are stored, internally, in a dictionary.
Dictionaries are extremely efficient at looking up a value, given a specific lookup object that maps to that value. They should always be used when you want to find one object based on another object. The object that is being stored is called the value; the object that is being used as an index is called the key. We've already seen dictionary syntax in some of our previous examples, but for completeness, we'll go over it again. Dictionaries can be created either using the dict()
constructor, or using the {}
syntax...