dict. keys()
Renvoie une vue des clés du dictionnaire, qui reflète toujours son contenu actuel.
- Renvoie
- Un objet vue
dict_keys. - Modifie l’original
- Non
Exemple
#modules = {"html": 11, "css": 9, "python": 12}
keys = modules.keys()
print(keys)
print(list(keys))
modules["react"] = 16
print(len(keys), "react" in keys)Définition et utilisation
#La méthode keys() renvoie un objet vue contenant les clés du dictionnaire dans leur ordre d’insertion. Cette vue n’est pas une copie : quand le dictionnaire change, elle affiche immédiatement les nouvelles clés.
Vous pouvez itérer sur cette vue, vérifier sa longueur avec len() et tester l’appartenance avec in. Écrire for key in dictionnaire ou key in dictionnaire fait la même chose sans appeler keys(), donc on omet généralement la méthode dans ces cas.
Une vue de clés se comporte comme un ensemble et prend en charge les opérateurs &, | et -. Cela permet de trouver rapidement les clés communes à deux dictionnaires, ou celles qui manquent dans l’un d’eux. Quand vous avez besoin d’une liste, par exemple pour lire une clé par son indice, convertissez la vue avec list().
Syntaxe
#dictionnaire.keys()Plus d’exemples
#defaults = {"theme": "dark", "lang": "fr", "sound": True}
user = {"lang": "en", "avatar": "renard.png"}
print(sorted(defaults.keys() & user.keys()))
print(sorted(defaults.keys() - user.keys()))
print(sorted(user.keys() - defaults.keys()))scores = {"Léa": 92, "Lucas": 0, "Emma": 0}
try:
for name in scores.keys():
if scores[name] == 0:
del scores[name]
except RuntimeError as error:
print("Erreur :", error)
for name in list(scores.keys()):
if scores[name] == 0:
del scores[name]
print(scores)Bonnes pratiques
#- Pour vérifier une clé, écrivez
if key in dictionnaire:sans.keys(). L’effet est le même, et c’est plus court à lire. - N’ajoutez et ne supprimez pas de clés pendant une boucle sur un dictionnaire. Parcourez une copie avec
list(dictionnaire), ou construisez un nouveau dictionnaire avec une compréhension de dictionnaire.
Entrées associées
#- dict.values()Renvoie une vue des valeurs du dictionnaire, prête pour les boucles, les sommes et les recherches.
- dict.items()Renvoie une vue de paires (clé, valeur), le moyen le plus pratique de parcourir un dictionnaire.
- dict.get()Renvoie la valeur d’une clé, ou une valeur par défaut quand la clé n’est pas dans le dictionnaire.
- set.intersection()Renvoie un nouvel ensemble avec les éléments présents dans tous les ensembles donnés.
Vous voyez une erreur ou il manque un exemple ? Écrivez-nous.