Latest news about Bitcoin and all cryptocurrencies. Your daily crypto news habit.
Before starting, I should mention that the code in this blog post and in the video above is available on my github.
Define a Dictionary
Dictionaries are written within curly brackets {}.
Define a dictionary. Keys are in red. Values are in blue.
# Define a dictionary code webstersDict = {'person': 'a human being', 'marathon': 'a running race that is about 26 miles', 'resist': 'to remain strong against the force', 'run': 'to move with haste; act quickly'}
Dictionaries are unordered data structures that map unique keys to values. The dictionary webstersDict used strings as keys in the dictionary, but dictionary keys can be any immutable data type (numbers, strings, tuples etc). Dictionary values can be just about anything (int, lists, functions, strings, etc).
For example, the dictionary below, genderDict has ints as keys and strings as values.
# Define a dictionarygenderDict = {0: 'male', 1: 'female'}
An important point to emphasize is that if you try to make a key a mutable datatype (like a list), you will get an error.
# Failure to define a dictionarywebstersDict = {(1, 2.0): 'tuples can be keys', 1: 'ints can be keys', 'run': 'strings can be keys', ['sock', 1, 2.0]: 'lists can NOT be keys'}
Failure to define a dictionary with a list as a key. Lists are NOT immutable
Access Values in a Dictionary
To access a dictionary value, use square brackets [].
For example, the code below uses the key ‘marathon’ to access the value ‘a running race that is about 26 miles’.
# Get value of the 'marathon' keywebstersDict['marathon']
Keep in mind that you will get a KeyError if you try to access a value for a key that does not exist.
# Try to get value for key that does not existwebstersDict['nonexistentKey']
KeyError will result if you try and look up a key that does not exist.
In the Dictionary Methods section, you will see the utility of using the dictionary method get to avoid KeyErrors.
Add or Update Key
You can add a new key-value pair.
# add one new key value pair to a dictionarywebstersDict['shoe'] = 'an external covering for the human foot'
Add the new key ‘shoe’ to the dictionary. The new key ‘shoe’ is enclosed in the red rectangle.
You can also update a key-value pair.
Update the dictionary key ‘marathon’
You can also add or update multiple key value pairs at a time using the dictionary update method as we will see later on.
Delete Key from Dictionary
It is possible to remove a key and its corresponding value from a dictionary using del.
# Remove the key 'resist' from the dictionarydel webstersDict['resist']
Remove the key ‘resist' from the dictionary webstersDict.
Dictionary Methods
Python dictionaries have different methods that help you modify a dictionary. This section of the tutorial just goes over various python dictionary methods.
update method
The update method is very useful for updating multiple key values pairs at a time. It takes a dictionary as an argument.
# Using update method to add two key value pairs at oncewebstersDict.update({'ran': 'past tense of run', 'shoes': 'plural of shoe'})
Added the keys ‘ran’ and ‘shoes’ to the dictionary.
If you are wondering why the keys added to the dictionary are not in the order added in, it is because dictionaries are unordered.
get method
# Define a dictionarystoryCount = {'is': 100, 'the': 90, 'Michael': 12, 'runs': 5}
The get method returns a value for a given key. If a key doesn’t exist, the dictionary will by default return None.
# Since the key 'Michael' exists, it will return the value 12storyCount.get('Michael')
Since the key ‘Michael’ exists, it returns the value 12. If ‘Michael’ didn’t exist, it would return None.
The method is very useful to look up keys you don’t know are in the dictionary to avoid KeyErrors.
They key ‘chicken’ does not exist.
You can also specify a default value to return if the key doesn’t exist.
# Make default value for key that doesn't exist 0.storyCount.get('chicken', 0)
You can see the usefulness of this method if you try a Python Word Count.
pop Method
The pop method removes a key and returns the value.
storyCount.pop('the')
Dictionary before and after removing the key ’the’ from the dictionary.keys Method
The keys method returns the keys of the dictionary as a list
storyCount.keys()
Return the keys of the dictionary as a listvalues Method
The values method returns the values in the dictionary as a list
storyCount.values()
items Method
The items method returns a list of tuples where each tuple is of the form (key, value).
webstersDict.items()
The items method returns a list of tuples in the form of (key, value).
Iterate through a Dictionary
You can iterate through the keys of a dictionary by using a for loop.
for key in storyCount: print(key)
Iterate through the keys of the dictionary.
You also iterate through the keys of a dictionary by using the keys method.
for key in storyCount.keys(): print(key)
Iterate through the keys of the dictionary.
The for loop below uses the items method to access one (key, value) pair on each iteration of the loop.
for key, value in webstersDict.items(): print(key, value)
Iterate through the key, value pairs of a dictionary.
If you have difficulty understanding this section, I recommend watching this section of the video.
Closing Remarks
Please let me know if you have any questions either here or in the comments section of the youtube video! The next post, Python Word Count will review dictionary methods, list manipulations, and string manipulations.
Python Dictionary and Dictionary Methods was originally published in Hacker Noon on Medium, where people are continuing the conversation by highlighting and responding to this story.
Disclaimer
The views and opinions expressed in this article are solely those of the authors and do not reflect the views of Bitcoin Insider. Every investment and trading move involves risk - this is especially true for cryptocurrencies given their volatility. We strongly advise our readers to conduct their own research when making a decision.