Bonjour j’aurais besoin d’aide pour un exercice en nsi (sur Python)
Exercice 2: On définit la liste de dictionnaires suivante : personnes = [{'prenom' : 'Anna', 'nom' : 'Conda', 'age' : 11), {'prenom' : 'Dino', 'nom' : 'Zor, 'age' : 9850), {'prenom' : 'Gramme', 'nom' : 'Conda', 'age' : 35), {'prenom' : Tirano', 'nom' : ", 'Zor : 8680}
1) Quel est le type de personnes ? Quel est le type de personnes [0] ? Quel est le type de personnes[1]['age'] ?
2) Écrire un programme qui affiche sur une même ligne le prénom de toutes les personnes ayant le nom ‘Conda’
3) Écrire un programme qui affiche, sur plusieurs lignes, le prénom et le nom de chaque personne ayant le nom "Zor'.
4) Bonus : Écrire un programme qui affiche combien de familles différentes contient la liste « personnes » (une famille est un groupe de personnes ayant le même nom).

Merci !!

Sagot :

Bonsoir,

La prochaine fois, essaye de recopier correctement l'énoncé, il y a de nombreuses erreurs de syntaxe:

personnes = [{'prenom' : 'Anna', 'nom' : 'Conda', 'age' : 11},

{'prenom' : 'Dino', 'nom' : 'Zor', 'age' : 9850},

{'prenom' : 'Gramme', 'nom' : 'Conda', 'age' : 35},

{'prenom' : 'Tirano', 'nom' : 'Zor', 'age' : 8680}]

1)

personnes est de type "list" (une liste).

personnes[0] = {'prenom' : 'Anna', 'nom' : 'Conda', 'age' : 11} est de type "dict" (dictionnaire).

personnes[1]['age'] = 9850 est de type "int" (entier).

2)

prenoms = ""

for elt in personnes: #On récupère chaque dictionnaire de la liste.

if elt['nom'] == 'Conda':

 prenoms += elt['prenom'] + " "

print(prenoms)

3)

for elt in personnes:

if elt['nom'] == 'Zor':

 print(elt['prenom'], elt['nom'])

4)

nb_familles = 0 #Compteur pour le nombre de famille.

liste_familles = [] #Liste des familles déjà comptées.

for elt in personnes:

   if not elt['nom'] in liste_familles: #Si le nom de famille n'est pas dans la liste des familles déjà comptées.

       liste_familles.append(elt['nom']) #On ajoute le nom à la liste.

       nb_familles += 1 #On a une famille en plus.

print(nb_familles)

Bonne soirée.