Maison >développement back-end >Tutoriel Python >Pourquoi Python renvoie-t-il une « KeyError : 'variablename' » ?

Pourquoi Python renvoie-t-il une « KeyError : 'variablename' » ?

DDD
DDDoriginal
2024-11-07 16:53:03603parcourir

Why Does Python Throw a

KeyError expliqué : KeyError 'variablename'

Dans la programmation Python, une KeyError est rencontrée lorsqu'une clé n'est pas trouvée dans un mappage (dictionnaire ). Le message d'erreur "KeyError : 'variablename'" indique que le 'variablename' spécifié n'est pas présent dans le dictionnaire.

Considérant l'extrait de code fourni :

path = meta_entry['path'].strip('/'),

Le KeyError est déclenché car la clé 'path' peut ne pas exister dans le dictionnaire 'meta_entry'. Pour résoudre ce problème, vérifiez l'existence de la clé 'path' dans le dictionnaire 'meta_entry' à l'aide de l'opérateur 'in'. Si la clé n'existe pas, elle peut être ajoutée avec une valeur ou le code peut gérer l'exception avec élégance.

La documentation officielle de Python définit KeyError comme :

exception KeyError
Raised when a mapping (dictionary) key is not found in the set of existing keys.

Par exemple :

mydict = {'a': '1', 'b': '2'}

L'accès aux clés existantes dans le dictionnaire renvoie leurs valeurs respectives :

mydict['a']  # returns '1'

Cependant, tenter d'accéder à une clé inexistante entraîne une KeyError :

mydict['c']  # raises KeyError: 'c'

Pour éviter les KeyErrors, il est recommandé de s'assurer que les clés accessibles existent réellement dans le dictionnaire. Ceci peut être réalisé en imprimant le contenu du dictionnaire ou en utilisant l'opérateur « in » pour vérifier l'existence de la clé.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn