Python Keyerror -Ausnahme

Python Keyerror -Ausnahme
Der KeyError Ausnahme kann in Python aus mehreren Gründen auftreten. Der Versuch, auf den ungültigen Schlüssel des Python -Wörterbuchs zuzugreifen. Das Wörterbuch wird verwendet, um mehrere Werte zu speichern, bei denen jeder Wert durch einen bestimmten Schlüsselwert zugänglich ist. Der KeyError tritt auf, wenn ein Schlüssel eines Wörterbuchs versucht wird, auf Zugang zu greifen, der nicht existiert, oder um zu versuchen, auf den ungültigen Schlüssel zuzugreifen. Diese Art von KeyError kann vermieden werden Versuchen Sie Block von Python. Diese Ausnahme kann auch für einige andere Python -Module auftreten. Die Möglichkeiten, um zu handhaben oder zu vermeiden KeyError Ausnahmen beim Zugriff auf das Python -Wörterbuch sind in diesem Tutorial gezeigt.

Beispiel 1: Auftreten der KeyError-Ausnahme für ungültige Schlüssel

Erstellen Sie eine Python -Datei mit dem folgenden Skript, um das Auftreten von KeyError für den ungültigen Schlüssel des Wörterbuchs zu überprüfen. Im Skript wurde ein Wörterbuch von drei Schlüsselwertpaaren deklariert. Als nächstes wurden drei Schlüssel verwendet, um die Wörterbuchwerte zu lesen, bei denen der Schlüssel benannt istTyp' existiert nicht im Wörterbuch. Der KeyError erfolgt zum Zeitpunkt des Lesens des Typs "Typ".

# Ein Wörterbuch deklarieren
dic_customers = 'customer_id': 'b-45322', 'name': 'meena kumari', 'account_type': 'retten'
# Lesen und drucken Sie die Kunden -ID
id = dic_customers ['customer_id']
print ("Kunden -ID:", ID)
# Lesen und drucken Sie den Kundennamen
name = dic_customers ['name']
print ("Kundenname:", Name)
# Lesen und drucken Sie den Kontotyp
type = dic_customers ['type']
print ("Konto Typ:", Typ)

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt. Die Werte der gültigen Schlüssel des Wörterbuchs wurden gedruckt, und der KeyError wurde für den ungültigen Schlüssel angezeigt. 'Typ'.

Beispiel-2: Handhabung der KeyError-Ausnahme mit Try-Ausnahme-Block

Die KeyError -Ausnahme kann auf unterschiedliche Weise behandelt werden. Eine Möglichkeit besteht darin, den Try-Except-Block zu verwenden, um diesen Fehler zu bewältigen. Erstellen Sie eine Python-Datei mit dem folgenden Skript, um den KeyError mit dem Try-Except-Block zu verarbeiten. Ein Wörterbuch mit drei Elementen wurde im Skript deklariert. Der KeyError erfolgt zum Zeitpunkt des Lesens des Werts des Schlüssels mit dem Namen "Typ", der im Wörterbuch nicht vorhanden ist, und die benutzerdefinierte Fehlermeldung wird angezeigt.

# Ein Wörterbuch deklarieren
dic_customers = 'customer_id': 'b-45322', 'name': 'meena kumari', 'account_type': 'retten'
versuchen:
# Lesen und drucken Sie die Kunden -ID
id = dic_customers ['customer_id']
print ("Kunden -ID:", ID)
# Lesen und drucken Sie den Kundennamen
name = dic_customers ['name']
print ("Kundenname:", Name)
# Lesen und drucken Sie den Kontotyp
type = dic_customers ['type']
print ("Konto Typ:", Typ)
außer KeyError als Schlüssel:
# Druckfehlermeldung
print (' Schlüssel existiert nicht im Wörterbuch.''.Format (Schlüssel))

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt. Die Werte der gültigen Schlüssel des Wörterbuchs wurden gedruckt und der Fehler wurde für den ungültigen Schlüssel angezeigt.

Beispiel-3: Vermeiden Sie die KeyError-Ausnahme mit Get () -Funktion

Der KeyError Die Ausnahme kann vermieden werden, indem die Funktion get () verwendet wird, ohne den Try_except -Block zu verwenden. Das Get () ist eine integrierte Funktion von Python, um den Wert des jeweiligen Schlüsselschlüssels des Wörterbuchs zu lesen. Diese Funktion gibt den Wert des Schlüssels zurück, wenn der Schlüssel existiert. Ansonsten kehrt es zurück Keiner. Erstellen Sie eine Python -Datei mit dem folgenden Skript, um zu wissen. Im Skript wurde die Funktion get () verwendet, um zwei gültige Schlüssel und einen ungültigen Schlüssel des Wörterbuchs zu lesen.

# Ein Wörterbuch deklarieren
dic_customers = 'customer_id': 'b-45322', 'name': 'meena kumari', 'account_type': 'retten'
# Legen Sie den Schlüsselwert fest
Key = 'Name' '
# Drucken Sie den Wert des Schlüssels, wenn existiert
print ("Der Wert von Schlüssel ist: ".Format (Schlüssel, dic_customer.Holen Sie sich (Schlüssel)))
# Legen Sie den Schlüsselwert fest
Key = 'Typ' '
# Drucken Sie den Wert des Schlüssels, wenn existiert
print ("Der Wert von Schlüssel ist: ".Format (Schlüssel, dic_customer.Holen Sie sich (Schlüssel)))
# Legen Sie den Schlüsselwert ein
Key = 'Balance'
"
Drucken Sie den Wert des Schlüssels, wenn es existiert,
Legen Sie ansonsten den Wert für den neuen Schlüssel fest
"
print ("Der Wert von Schlüssel ist: ".Format (Schlüssel, dic_customer.Holen Sie sich (Schlüssel, 60000)))

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt. Der 'Typ' Schlüssel existiert nicht im Wörterbuch. Also die 'Keiner' Der Wert wurde durch die Funktion get () für diesen Schlüssel zurückgegeben.

Beispiel-4: Vermeiden Sie die KeyError-Ausnahme mit if-else-Anweisung

Der KeyError Ausnahme kann auch vermieden werden, ohne die Funktion get () zu verwenden. Erstellen Sie eine Python -Datei mit dem folgenden Skript, um die zu vermeiden KeyError Ausnahme durch Überprüfung der Existenz des Schlüssels des Wörterbuchs. Die Funktion benannt 'check_key' ' wurde im Skript deklariert, um die Existenz jedes Schlüsselschlüssels des Wörterbuchs zu überprüfen. Die Funktion gibt den formatierten Wert des Schlüssels zurück, wenn der Schlüssel im Wörterbuch vorhanden ist. Andernfalls wird die Fehlermeldung zurückgegeben. Hier wurde ein Wörterbuch mit drei Elementen verwendet. Zuerst die 'Kundennummer' wird überprüft, die im Wörterbuch existieren. Als nächstes das ''Typ'Schlüssel, der im Wörterbuch nicht existiert, wird überprüft.

# Funktion definieren, um den Schlüssel zu überprüfen oder nicht
Def check_key (k, dic):
Wenn k in DIC.Schlüssel():
print ("Der Wert Schlüssel ist .".Format (k, dic [k]))
anders:
print (" Schlüssel existiert nicht im Wörterbuch.".Format (k))
# Ein Wörterbuch deklarieren
dic_customers = 'customer_id': 'b-45322', 'name': 'meena kumari', 'account_type': 'retten'
# Rufen Sie die Funktion an, um die Schlüssel 'Customer_id' zu überprüfen
check_key ('customer_id', dic_customers)
# Rufen Sie die Funktion auf, um die Taste "Typ" zu überprüfen
check_key ('type', dic_customers)

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt. Der Wert der 'Kundennummer'Der Schlüssel wurde gedruckt und die Fehlermeldung wurde für die gedruckt 'Typ' Taste.

Abschluss:

In diesem Tutorial wurden verschiedene Möglichkeiten zur Vermeidung der KeyError-Ausnahme, die für den nicht existierenden Schlüssel des Python-Wörterbuchs auftritt. Die Python -Nutzer können auf der Grundlage ihrer Anforderungen eine der hier genannten Arten befolgen.