Wie kann ich in Python sicher auf verschachtelte Wörterbuchwerte zugreifen?

Linda Hamilton
Freigeben: 2024-10-18 13:05:03
Original
1036 Leute haben es durchsucht

How to Access Nested Dictionary Values Safely in Python?

Sicherer Zugriff auf verschachtelte Wörterbuchwerte

Bei der Arbeit mit verschachtelten Wörterbüchern in Python ist es wichtig, Werte sicher abzurufen, um Fehler zu vermeiden. Um dies zu erreichen, gibt es mehrere Ansätze:

1. Verschachtelte get()-Aufrufe

Verwenden Sie zwei aufeinanderfolgende get()-Aufrufe für das verschachtelte Wörterbuch:

<code class="python">example_dict.get('key1', {}).get('key2')</code>
Nach dem Login kopieren

Dadurch wird sichergestellt, dass None zurückgegeben wird, wenn entweder „key1“ oder „key2“ existiert nicht, die verschachtelte Struktur bleibt erhalten.

2. try...exclusive Block

Verwenden Sie einen try...exclusive Block, um KeyError-Ausnahmen abzufangen:

<code class="python">try:
    example_dict['key1']['key2']
except KeyError:
    pass</code>
Nach dem Login kopieren

Dies funktioniert, führt jedoch nach dem ersten fehlenden Schlüssel zu einem Kurzschluss.

3. Hasher-Klasse

Definieren Sie eine Hasher-Klasse als Unterklasse von dict, die die Methode __missing__() überschreibt:

<code class="python">class Hasher(dict):
    def __missing__(self, key):
        value = self[key] = type(self)()
        return value</code>
Nach dem Login kopieren

Mit Hasher können Sie sicher auf verschachtelte Werte zugreifen, ohne KeyErrors auszulösen. Stattdessen werden leere Hasher zurückgegeben.

4. Safeget-Hilfsfunktion

Erstellen Sie eine Hilfsfunktion, die die Komplexität verbirgt:

<code class="python">def safeget(dct, *keys):
    for key in keys:
        try:
            dct = dct[key]
        except KeyError:
            return None
    return dct</code>
Nach dem Login kopieren

Diese Funktion ermöglicht eine prägnante Möglichkeit, sicher auf verschachtelte Werte zuzugreifen.

Von Mit diesen Techniken können Sie Werte aus verschachtelten Wörterbüchern sicher abrufen und so Robustheit und Fehlerbehandlung in Ihrem Python-Code gewährleisten.

Das obige ist der detaillierte Inhalt vonWie kann ich in Python sicher auf verschachtelte Wörterbuchwerte zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!