Python Dictionary
Dictionary
Python dictionary is a container of the unordered set of objects like lists. The objects are surrounded by curly braces { }. The items in a dictionary are a comma-separated list of key:value pairs where keys and values are Python data type.
Each object or value accessed by key and keys are unique in the dictionary. As keys are used for indexing, they must be the immutable type (string, number, or tuple). You can create an empty dictionary using empty curly braces.
Contents :
- Dictionary commands
- Create a new dictionary in Python
- Get value by key in Python dictionary
- Add key/value to a dictionary in Python
- Iterate over Python dictionaries using for loops
- Remove a key from a Python dictionary
- Sort a Python dictionary by key
- Find the maximum and minimum value of a Python dictionary
- Concatenate two Python dictionaries into a new one
- Test whether a Python dictionary contains a specific key
- Find the length of a Python dictionary
- Python Dictionary - Exercises, Practice, Solution
Dictionary: Commands
# Coll. of keys that reflects changes. <view> = <dict>.keys() # Coll. of values that reflects changes. <view> = <dict>.values() # Coll. of key-value tuples. <view> = <dict>.items()
# Returns default if key is missing. value = <dict>.get(key, default=None) # Returns and writes default if key is missing. value = <dict>.setdefault(key, default=None) # Creates a dict with default value of type. <dict> = collections.defaultdict(<type>) # Creates a dict with default value 1. <dict> = collections.defaultdict(lambda: 1)
<dict>.update(<dict>) # Creates a dict from coll. of key-value pairs. <dict> = dict(<collection>) # Creates a dict from two collections. <dict> = dict(zip(keys, values)) # Creates a dict from collection of keys. <dict> = dict.fromkeys(keys [, value])
# Removes item or raises KeyError. value = <dict>.pop(key) # Filters dictionary by keys. {k: v for k, v in <dict>.items() if k in keys}
Counter
>>> from collections import Counter >>> colors = ['blue', 'red', 'blue', 'red', 'blue'] >>> counter = Counter(colors) >>> counter['yellow'] += 1 Counter({'blue': 3, 'red': 2, 'yellow': 1}) >>> counter.most_common()[0] ('blue', 3)
Create a new dictionary in Python
>>> #Empty dictionary
>>> new_dict = dict()
>>> new_dict = {}
>>> print(new_dict)
{}
>>> #Dictionary with key-vlaue
>>> color = {"col1" : "Red", "col2" : "Green", "col3" : "Orange" }
>>> color
{'col2': 'Green', 'col3': 'Orange', 'col1': 'Red'}
>>>
Get value by key in Python dictionary
>>> #Declaring a dictionary
>>> dict = {1:20.5, 2:3.03, 3:23.22, 4:33.12}
>>> #Access value using key
>>> dict[1]
20.5
>>> dict[3]
23.22
>>> #Accessing value using get() method
>>> dict.get(1)
20.5
>>> dict.get(3)
23.22
>>>
Add key/value to a dictionary in Python
>>> #Declaring a dictionary with a single element
>>> dic = {'pdy1':'DICTIONARY'}
>>>print(dic)
{'pdy1': 'DICTIONARY'}
>>> dic['pdy2'] = 'STRING'
>>> print(dic)
{'pdy1': 'DICTIONARY', 'pdy2': 'STRING'}
>>>
>>> #Using update() method to add key-values pairs in to dictionary
>>> d = {0:10, 1:20}
>>> print(d)
{0: 10, 1: 20}
>>> d.update({2:30})
>>> print(d)
{0: 10, 1: 20, 2: 30}
>>>
Iterate over Python dictionaries using for loops
Code:
d = {'Red': 1, 'Green': 2, 'Blue': 3}
for color_key, value in d.items():
print(color_key, 'corresponds to ', d[color_key])
Output:
>>> Green corresponds to 2 Red corresponds to 1 Blue corresponds to 3 >>>
Remove a key from a Python dictionary
Code:
myDict = {'a':1,'b':2,'c':3,'d':4}
print(myDict)
if 'a' in myDict:
del myDict['a']
print(myDict)
Output:
>>> {'d': 4, 'a': 1, 'b': 2, 'c': 3} {'d': 4, 'b': 2, 'c': 3} >>>
Sort a Python dictionary by key
Code:
color_dict = {'red':'#FF0000',
'green':'#008000',
'black':'#000000',
'white':'#FFFFFF'}
for key in sorted(color_dict):
print("%s: %s" % (key, color_dict[key]))
Output:
>>> black: #000000 green: #008000 red: #FF0000 white: #FFFFFF >>>
Find the maximum and minimum value of a Python dictionary
Code:
my_dict = {'x':500, 'y':5874, 'z': 560}
key_max = max(my_dict.keys(), key=(lambda k: my_dict[k]))
key_min = min(my_dict.keys(), key=(lambda k: my_dict[k]))
print('Maximum Value: ',my_dict[key_max])
print('Minimum Value: ',my_dict[key_min])
Output:
>>> Maximum Value: 5874 Minimum Value: 500 >>>
Concatenate two Python dictionaries into a new one
Code:
dic1={1:10, 2:20}
dic2={3:30, 4:40}
dic3={5:50,6:60}
dic4 = {}
for d in (dic1, dic2, dic3): dic4.update(d)
print(dic4)
Output:
>>> {1: 10, 2: 20, 3: 30, 4: 40, 5: 50, 6: 60} >>>
Test whether a Python dictionary contains a specific key
Code:
fruits = {}
fruits["apple"] = 1
fruits["mango"] = 2
fruits["banana"] = 4
# Use in.
if "mango" in fruits:
print("Has mango")
else:
print("No mango")
# Use in on nonexistent key.
if "orange" in fruits:
print("Has orange")
else:
print("No orange")
Output
>>> Has mango No orange >>>
Find the length of a Python dictionary
Code:
fruits = {"mango": 2, "orange": 6}
# Use len() function to get the length of the dictionary
print("Length:", len(fruits))
Output:
>>> Length: 2 >>>
Previous: Python Lists
Next: Python Tuples
Test your Python skills with w3resource's quiz
Python: Tips of the Day
Creates a list of elements, grouped based on the position in the original lists:
Example:
def tips_zip(*args, fill_value=None): max_length = max([len(lst) for lst in args]) result = [] for i in range(max_length): result.append([ args[k][i] if i < len(args[k]) else fillvalue for k in range(len(args)) ]) return result print(tips_zip(['a', 'b'], [1, 2], [True, False])) print(tips_zip(['a'], [1, 2], [True, False])) print(tips_zip(['a'], [1, 2], [True, False], fill_value = '1'))
Output:
[['a', 1, True], ['b', 2, False]] [['a', 1, True], [None, 2, False]] [['a', 1, True], ['1', 2, False]]
- Weekly Trends
- Java Basic Programming Exercises
- SQL Subqueries
- Adventureworks Database Exercises
- C# Sharp Basic Exercises
- SQL COUNT() with distinct
- JavaScript String Exercises
- JavaScript HTML Form Validation
- Java Collection Exercises
- SQL COUNT() function
- SQL Inner Join
- JavaScript functions Exercises
- Python Tutorial
- Python Array Exercises
- SQL Cross Join
- C# Sharp Array Exercises