Beheben den Schlüsselfehler in einem Dictionary in Python

Vaibhav Vaibhav 12 April 2022
Beheben den Schlüsselfehler in einem Dictionary in Python

Dictionary ist eine skalierbare Datenstruktur, die in Python verfügbar ist. Es speichert Daten in Form von Schlüssel-Wert-Paaren, wobei ein Schlüssel ein beliebiges Hash-fähiges und unveränderliches Objekt sein kann und ein Wert alles sein kann; eine Liste, ein Tupel, ein Dictionary, eine Liste von Objekten und so weiter.

Mit Schlüsseln können wir auf die Werte zugreifen, auf die diese Schlüssel zeigen. Wenn einem Dictionary ein nicht vorhandener Schlüssel übergeben wird, löst es eine KeyError-Ausnahme aus. In diesem Artikel erfahren wir, wie Sie diese Ausnahme in Python behandeln.

Beheben die Ausnahme KeyError in einem Dictionary in Python

Um die Ausnahme KeyError zu beheben, kann vor dem Zugriff überprüft werden, ob der Schlüssel im Dictionary vorhanden ist. Die Methode keys() gibt eine Liste von Schlüsseln innerhalb des Wörterbuchs zurück. Bevor Sie auf den Wert eines Schlüssels zugreifen, sollten Sie überprüfen, ob der Schlüssel in dieser Liste vorhanden ist, wenn Sie sich über seine Existenz nicht sicher sind. Der folgende Python-Code zeigt dasselbe.

data = {
    "a": 101,
    "b": 201,
    "c": 301,
    "d": 401,
    "e": 501,
}
keys = ["a", "e", "r", "f", "c"]

for key in keys:
    if key in data.keys():
        print(data[key])
    else:
        print(f"'{key}' not found.")

Ausgabe:

101
501
'r' not found.
'f' not found.
301

Abgesehen von dem oben diskutierten Ansatz kann man auch einen try...except-Block verwenden, um die KeyError-Ausnahme oder irgendeine Ausnahme abzufangen. Siehe dazu den folgenden Python-Code.

data = {
    "a": 101,
    "b": 201,
    "c": 301,
    "d": 401,
    "e": 501,
}
keys = ["a", "e", "r", "f", "c"]

for key in keys:
    try:
        print(data[key])
    except:
        print(f"'{key}' not found.")

Ausgabe:

101
501
'r' not found.
'f' not found.
301

Der Code unter dem except-Block wird ausgeführt, wenn eine KeyError-Ausnahme auftritt.

Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

Verwandter Artikel - Python Error