Résolue

Dictionnaire get

# Dictionnaires

je ne vois pas pk cela ne fonctionne pas, alors que la clé prénom existe

au passage on ne peut plus consulter les anciennes questions sur chaque video.

ni meme utilisé la touche bug, car la remarque que l on veut ecrire est en blanc, donc invisible

Bonsoir,

ce que je comprends dans la définition de .get c'est le premier paramètre c'est la clé (key) et le second (optionnel) c'est le message d'erreur si la clé n'est pas trouvé.


Mais dans ton cas, la clé c'est 0 ou 1 ou 2 et leurs valeurs sont un autre dictionnaire.

Je pense qu'il faut d'abord extraire le dictionnaire des valeurs puis faire le .get sur le dictionnaire que tu as récupéré.


exemple de code:

dico = {
    0: {"prénom": "Aurélien",
        "métier": "plombier",
        "ville": "Toulon"}
}

for valeur in dico.values():
    dico2 = valeur

print(dico2.get("prénom"))

Thibault houdon

Mentor

Salut Aurélien,


Effectivement, la méthode get ne recherche qu'au premier niveau du dictionnaire. Dans ce cas, tu peux récupérer donc uniquement les clés 0, 1 et 2.


Si tu veux rechercher dans le deuxième niveau, il faut ainsi d'abord récupérer le dictionnaire associé à une des clés 0, 1 ou 2 :


dico = {

0: {"prénom": "Aurélien", "métier": "plombier", "ville": "Toulon"},
1: {"prénom": "Laura", "metier": "ch", "ville": "Marseille"},
2: {"prénom": "Aaron", "metier": "écolier", "ville": "toulon"}

}

print(dico[0].get("prénom", "la clé n'existe pas "))
# Ou avec get 
print(dico.get(0).get("prénom", "la clé n'existe pas "))


Et oui effectivement pour les questions il faut que je les rajoute, j'ai oublié avec le changement d'interface (et la fenêtre de bug aussi, je corrige, merci pour le signalement !)

super merci a vous 2!

Inscris-toi

(c'est gratuit !)

Inscris-toi

Tu dois créer un compte pour participer aux discussions.

Créer un compte

Rechercher sur le site

Formulaire de contact

Inscris-toi à Docstring

Pour commencer ton apprentissage.

Tu as déjà un compte ? Connecte-toi.