Heim > Backend-Entwicklung > Python-Tutorial > Beheben Sie den Python-Fehler: KeyError: 'xxx'

Beheben Sie den Python-Fehler: KeyError: 'xxx'

王林
Freigeben: 2023-08-19 23:10:57
Original
2007 Leute haben es durchsucht

解决Python报错:KeyError: 'xxx'

Lösung für Python-Fehler: KeyError: 'xxx'

Während des Python-Programmierungsprozesses stoßen wir häufig auf verschiedene Fehlermeldungen. Unter diesen ist KeyError: 'xxx' einer der häufigsten Fehlertypen. Dieser Fehler tritt normalerweise bei der Verwendung eines Wörterbuchs (Dikt) auf. Wenn wir versuchen, über einen nicht vorhandenen Schlüssel auf einen Wert im Wörterbuch zuzugreifen, löst Python eine KeyError-Ausnahme aus.

Angenommen, wir haben ein Wörterbuch mit Schülernamen und entsprechenden Noten:

student_scores = {'Alice': 95, 'Bob': 88, 'Charlie': 92}
print(student_scores['Alice'])
print(student_scores['David'])
Nach dem Login kopieren

Im obigen Code haben wir zunächst erfolgreich über den Schlüssel „Alice“ auf den entsprechenden Wert 95 zugegriffen, aber als wir versuchten, auf den Schlüssel „David ', KeyError: 'David' wird auftreten, weil dieser Schlüssel nicht im Wörterbuch vorhanden ist.

Wenn wir also auf den Fehler KeyError: 'xxx' stoßen, wie sollen wir ihn lösen? Im Folgenden gebe ich einige gängige Lösungen.

  1. Überprüfen Sie, ob der Schlüssel vorhanden ist: Bevor wir auf das Wörterbuch zugreifen, können wir mit dem Schlüsselwort in prüfen, ob der Schlüssel vorhanden ist, auf den zugegriffen werden soll. Zum Beispiel:
student_scores = {'Alice': 95, 'Bob': 88, 'Charlie': 92}
if 'David' in student_scores:
    print(student_scores['David'])
else:
    print("Key 'David' not found")
Nach dem Login kopieren

Auf diese Weise wird keine KeyError-Ausnahme auftreten, selbst wenn der Schlüssel „David“ nicht existiert.

  1. Verwenden Sie die Methode get(): Das Wörterbuchobjekt stellt die Methode get() bereit, die einen Standardwert zurückgeben kann, wenn der Schlüssel nicht vorhanden ist, anstatt eine KeyError-Ausnahme auszulösen. Zum Beispiel:
student_scores = {'Alice': 95, 'Bob': 88, 'Charlie': 92}
print(student_scores.get('David', 'Key not found'))
Nach dem Login kopieren

Wenn wir im obigen Code auf den nicht vorhandenen Schlüssel „David“ zugreifen, wird die Zeichenfolge „Schlüssel nicht gefunden“ ohne eine KeyError-Ausnahme zurückgegeben.

  1. Verwenden Sie die Try-Except-Anweisung: Wenn wir möglicherweise Probleme mit einem bestimmten Schlüssel haben, können wir die Try-Except-Anweisung verwenden, um die KeyError-Ausnahme abzufangen und den entsprechenden Verarbeitungscode auszuführen. Zum Beispiel:
student_scores = {'Alice': 95, 'Bob': 88, 'Charlie': 92}
try:
    print(student_scores['David'])
except KeyError:
    print("Key 'David' not found")
Nach dem Login kopieren

Wenn in diesem Beispiel eine KeyError-Ausnahme auftritt, wird der folgende Codeblock ausgeführt und „Schlüssel ‚David‘ nicht gefunden“ ausgegeben, ohne die Programmausführung zu unterbrechen.

Um es zusammenzufassen: Wenn wir auf den Fehler KeyError: 'xxx' stoßen, können wir das Problem lösen, indem wir prüfen, ob der Schlüssel vorhanden ist, die Methode get() verwenden oder die Anweisung try-exclusive verwenden. Diese Methoden können uns helfen, Ausnahmen beim Schlüsselwertzugriff im Wörterbuch besser zu behandeln und die Robustheit und Stabilität des Programms zu verbessern.

Ich hoffe, dass dieser Artikel bei der Lösung des Python-Fehlers KeyError: 'xxx' hilfreich sein wird und es allen ermöglicht, besser mit diesem häufigen Fehlertyp umzugehen.

Das obige ist der detaillierte Inhalt vonBeheben Sie den Python-Fehler: KeyError: 'xxx'. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage