Heim > Backend-Entwicklung > Python-Tutorial > Leerer Wörterbuchschlüssel falsch: Wie kann der Wörterbuchschlüsselfehler von Python behoben werden?

Leerer Wörterbuchschlüssel falsch: Wie kann der Wörterbuchschlüsselfehler von Python behoben werden?

WBOY
Freigeben: 2023-06-24 15:03:13
Original
1648 Leute haben es durchsucht

Dictionary in Python ist eine flexible und leistungsstarke Datenstruktur, die Schlüssel-Wert-Paare speichern kann und über schnelle Such- und Einfügefunktionen verfügt. Wenn Sie jedoch mit Wörterbuch-Schlüssel-Wert-Paaren nicht vorsichtig sind, kann das Problem leerer Wörterbuchschlüssel auftreten. Dieses Problem führt häufig zum Absturz des Codes oder zur Ausgabe unerwarteter Ergebnisse.

In diesem Artikel werden zwei Methoden zur Behebung des Fehlers „Leerer Wörterbuchschlüssel“ in Python vorgestellt.

Methode 1: Verwenden Sie if-Anweisungen, um leere Wörterbuchschlüssel zu verhindern

Es dürfen keine doppelten Schlüssel im Python-Wörterbuch vorhanden sein, da sonst die vorherigen Schlüssel-Wert-Paare überschrieben werden. Wenn der Wert eines Wörterbuchschlüssels leer ist, interpretiert Python ihn ohne zusätzliche Verarbeitung als None-Typ. None ist ein nicht hashbarer Typ und kann nicht als Wörterbuchschlüssel verwendet werden.

Daher sollten Sie beim Schreiben von Code immer die Möglichkeit berücksichtigen, dass Nullschlüssel zu Fehlern in Ihrem Code führen können. Die Lösung besteht darin, eine if-Anweisung zu verwenden, um den leeren Schlüssel zu ermitteln und ihn auszuschließen, zum Beispiel:

my_dict = {'a': 1, 'b': None, 'c': 3}
for key in my_dict.keys():
    if key is not None:
        print(my_dict[key])
Nach dem Login kopieren

Wenn in diesem Beispiel der Schlüssel im Wörterbuch None ist, schließt die if-Anweisung den Schlüssel aus und vermeidet Fehler bei leeren Wörterbuchschlüsseln.

Methode 2: Verwenden Sie defaultdict, um leere Wörterbuchschlüssel zu vermeiden.

Pythons Sammlungsmodul bietet eine automatische Initialisierungswörterbuchfunktion namens defaultdict. Diese Funktion weist einem nicht vorhandenen Schlüssel automatisch einen Standardwert zu und vermeidet so das Problem leerer Wörterbuchschlüssel.

Die Verwendung von defaultdict ist so einfach wie die Verwendung eines normalen Wörterbuchs:

from collections import defaultdict

# 创建一个使用int类型作为默认值的defaultdict
my_dict = defaultdict(int)

# 在空字典键上插入一个值
my_dict[None] = 1

# 输出字典
print(my_dict)
Nach dem Login kopieren

In diesem Beispiel erstellen wir ein defaultdict, das den Typ int als Standardwert verwendet. Wenn wir einen leeren Wörterbuchschlüssel einfügen, weist defaultdict ihm automatisch den Standardwert 0 zu, anstatt einen Fehler auszulösen.

Fazit

Der Fehler „Leerer Wörterbuchschlüssel“ ist ein häufiges Problem in Python, kann aber leicht mit if-Anweisungen oder defaultdict gelöst werden, wodurch unser Code eleganter und robuster wird. Beachten Sie daher beim Schreiben von Python-Code immer die Maßnahmen zur Vermeidung von Nullwörterbuchschlüsselfehlern.

Das obige ist der detaillierte Inhalt vonLeerer Wörterbuchschlüssel falsch: Wie kann der Wörterbuchschlüsselfehler von Python behoben werden?. 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