Create a Python dictionary that returns a list of values for each key. The key can be whatever type you want.
Design the dictionary so that it could be useful for something meaningful to you. Create at least three different items in it. Invent the dictionary yourself. Do not copy the design or items from some other source.
Next consider the invert_dict function from Section 11.5 of your textbook.
# From Section 11.5 of:
# Downey, A. (2015). Think Python: How to think like a computer scientist. Needham, Massachusetts: Green Tree Press.
def invert_dict(d):
inverse = dict()
for key in d:
val = d[key]
if val not in inverse:
inverse[val] = [key]
else:
inverse[val].append(key)
return inverse
# The modified code can work when the value of the dictionary is a list
def invert_dict(d):
inverse = dict()
for key in d:
val = d[key]
for elem in val:
if elem not in inverse:
inverse[elem] = [key]
elif key not in inverse[elem]:
inverse[elem].append(key)
return inverse
# Dictionary of students and subjects they study
students ={}
students['Boo']=['Algebra','Analytic Geometry','Calculus','Combinatorics']
students['Coo']=['Algebra','Analytic Geometry','Calculus','Combinatorics']
students['Foo']=['Linear Algebra','Analytic Geometry','Discrete Mathematics',
'Combinatorics']
# Dictionary of subjects and students who are enrolled in them
subjects = invert_dict(students)
# example output
for item in subjects.items():
print(item)
Comments
Dear Phenomenal,
You're welcome. We are glad to be helpful.
If you liked our service please press like-button beside answer field. Thank you!
Your platform is a great one I enjoy always
Leave a comment