I have 2 lists like the following:
lista1 = [
{'Idade': '8', 'Especie': 'Gato', 'Nome do Animal': 'Felix'},
{'Idade': '57', 'Especie': 'Tartaruga', 'Nome do Animal': 'Michelangelo'},
{'Idade': '12', 'Especie': 'Cao', 'Nome do Animal': 'Rantanplian'},
{'Idade': '2', 'Especie': 'Peixe', 'Nome do Animal': 'Nemo'},
{'Idade': '45', 'Especie': 'Tartaruga', 'Nome do Animal': 'Leonardo'},
{'Idade': '9', 'Especie': 'Cao', 'Nome do Animal': 'Milo'},
{'Idade': '57', 'Especie': 'Tartaruga', 'Nome do Animal': 'Raphael'},
{'Idade': '4', 'Especie': 'Peixe', 'Nome do Animal': 'Dory'} ]
lista2 = [
{'Nome do Dono ': 'Ana', 'Nome do Animal': 'Michelangelo'},
{'Nome do Dono ': 'Eva', 'Nome do Animal': 'Dory'},
{'Nome do Dono ': 'Ada', 'Nome do Animal': 'Rantanplan'},
{'Nome do Dono ': 'Ana', 'Nome do Animal': 'Leonardo'},
{'Nome do Dono ': 'Eva', 'Nome do Animal': 'Felix'},
{'Nome do Dono ': 'Ana', 'Nome do Animal': 'Raphael'},
{'Nome do Dono ': 'Eva', 'Nome do Animal': 'Nemo'} ]
And I want to get a dictionary that makes for each owner a list of the value of the dictionary of the age of their animals, type this:
{ 'Eva': ['Felix', 'Nemo', 'Dory'],'Ana': ... }
I've tried to do but it's not working, I'm just missing a little promonor that I do not know which is because my code just puts an animal for owner:
myvalues = [a['Nome do Dono'] for a in lista2 if 'Nome do Dono' in a]
novo_dict = {}
for nome in myvalues:
novo_dict[nome] = []
for i in range(len(lista2)):
if nome == lista2 [i]['Nome do Dono']:
novo_dict[nome] = lista2 [i]['Nome do Animal']
However, what I get is this:
{'Eva': ['Nemo'], 'Ana': ['Raphael'], 'Ada': ['Rantanplan']}