HOME/Articles/

python dictionary examples

Article Outline

The Python language supports many types of variables. One of those types is a dictionary, this is similar to a hash map in computer science.

So another variable is the dictionary: a container model, it can store any type of object.

Each dictionary key maps a value (key => value) to (:) divided by a colon, comma between each pair (*, *), in the entire dictionary is between curly braces ({ })

This lets you quickly retrieve a value, given a key. There are many scenarios in which that is useful. Like a map of phone numbers, internet addresses or to keep track of word frequency.

hashmap

If new to Python, you may like this Python course

Dictionary example

The following format:

    d = {key1: value1, key2: value2}

Key must be unique, but the value is not necessarily unique.

A value may take any data type, but the key must be immutable, such as strings, numbers, or tuples.

A simple example dictionary:

    dict = { 'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

So also create a dictionary:

    dict1 = { 'abc': 456};
    dict2 = { 'abc': 123, 98.6: 37};

to access the dictionary values

Use the appropriate key in the familiar square brackets, as shown in the following examples:

dict = { 'Name': 'Zara', 'Age': 7, 'Class': 'First'}

print("dict ['Name']:", dict['Name'])
print("dict ['Age']:", dict['Age'])

Examples of the above output:

dict ['Name']: Zara
dict ['Age']: 7

If there are no keys to access the data dictionary, it will output the following error:

dict = { 'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print("dict [ 'Alice']:", dict [ 'Alice'])

Examples of the above output:

    dict [ 'Zara']:
    Traceback (most recent call last):
      File "test.py", line 4, in <module>
        print "dict ['Alice']:", dict ['Alice'];
    KeyError: 'Alice'

Modifying a dictionary

A way to add new content to the dictionary is to add new key / value pairs, modify, or delete existing key / value pairs like in the following examples:

mydict = { 'Name': 'Zara', 'Age': 7, 'Class': 'First'};

mydict['Age'] = 8; # update existing entry                                                            
mydict['School'] = "ABC School"; # Add new entry                                                      

print("dict['Age']:", mydict['Age'])
print("dict['School']:", mydict['School'])

Examples of the above output:

dict['Age']: 8
dict['School']: ABC School

Delete dictionary elements

You can delete a single element with just one statement. Delete a dictionary with the del command, as in the following examples:

mydict = { 'Name': 'Zara', 'Age': 7, 'Class': 'First'};

del mydict [ 'Name']; # delete key is 'Name' entry                                                    
mydict.clear (); # Clear all dictionary entries                                                       
del mydict; # delete dictionary                                                                       

print("dict [ 'Age']:", mydict['Age'])
print("dict [ 'School']:", mydict['School'])

But this raises an exception, because there is no longer a dictionary (deleted the whole dictionary with the del statement):

Traceback (most recent call last):
  File "tmp.py", line 7, in <module>
    print("dict [ 'Age']:", mydict['Age'])
NameError: name 'mydict' is not defined

key characteristics of the dictionary

Dictionary may take any python object, or may be user-defined, but not the key.

Two important points to remember:

1) Python does not allow the same key appears twice. When you create the same key twice, the last value will be remembered, like the following examples thas the key Name twice:

mydict = { 'Name': 'Zara', 'Age': 7, 'Name': 'Manni'}
print("dict['Name']:", mydict['Name'])

Examples of the above output:

    dict['Name']: Manni

2) key must not be changed, it is possible to use a number, string, or act as a tuple, but it will not work with the list, examples:

mydict = {['Name']: 'Zara', 'Age': 7}
print("dict['Name']:", mydict ['Name'])

Examples of the above output:

Traceback (most recent call last):
  File "tmp.py", line 2, in <module>
    mydict = {['Name']: 'Zara', 'Age': 7}
TypeError: unhashable type: 'list'

dictionaries built-in functions & methods

Python dictionary contains the following built-in functions:

No. function and description
1 cmp(dict1, dict2) Comparison of two dictionary elements.
2 len(dict) Counting the number of dictionary elements, i.e., the total number of keys.
3 str(dict) String dictionary printable output representation.
4 type(variable) The return type of a variable input, if the variable is a dictionary returns a dictionary.

Python dictionary contains the following built-in functions:

No. function and description
1 .clear() Delete all the elements in the dictionary
2 .copy() Returns a shallow copy of the dictionary
3 .fromkeys() Create a new dictionary, a sequence of elements do seq dictionary key, val is a dictionary of all the key corresponding to the initial value
4 .get(key, default = None) Returns the value of the specified key, if the value is not in the dictionary to return default values
5 .has_key(key) If the key is in the dictionary dict returns true, otherwise returns false
6 .items () In return may traverse the list (key, value) tuples array
7 .keys() To return a list of all the keys dictionary
8 .setdefault(key, default = None) And get () is similar, but if the key does not already exist in the dictionary, it will add key and value to default
9 .update(dict2) Dict2 the dictionary of key / value pairs in the update to the dict
10 .values​() To return a list of all the values ​​in the dictionary