41.5k views
5 votes
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.

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

Modify this function so that it can invert your dictionary. In particular, the function will need to turn each of the list items into separate keys in the inverted dictionary.
Run your modified invert_dict function on your dictionary. Print the original dictionary and the inverted one.
Describe what is useful about your dictionary. Then describe whether the inverted dictionary is useful or meaningful, and why.

User Ekalavya
by
4.0k points

1 Answer

1 vote

Answer:

Step-by-step explanation:

# name : [animal type, age, sex]

animal_shellter = {

"Teddy": ["dog",4,"male"],

"Elvis": ["dog",1,"male"],

"Sheyla": ["dog",5,"female"],

"Topic": ["hamster",3,"male"],

"Kuzya": ["cat",10,"male"],

"Misi": ["cat",8,"female"],

}

print(animal_shellter)

print("")

def invert(d):

inverse = dict()

for key in d:

val = d[key]

for item in val:

if item not in inverse:

inverse[item] = [key]

else:

inverse[item].append(key)

return inverse

inverted_shellter = invert(animal_shellter)

print(inverted_shellter)

User Matthew Hannah
by
3.8k points