Heim >Backend-Entwicklung >Python-Tutorial >Wie kann man passende Schlüssel-Wert-Paare in zwei Wörterbüchern effizient zählen?

Wie kann man passende Schlüssel-Wert-Paare in zwei Wörterbüchern effizient zählen?

Susan Sarandon
Susan SarandonOriginal
2024-11-01 01:04:28223Durchsuche

How to Efficiently Count Matching Key-Value Pairs in Two Dictionaries?

Vergleich von Wörterbüchern für äquivalente (Schlüssel-, Wert-)Paare

Frage:

Gegeben zwei Wörterbücher, wie können wir die Anzahl übereinstimmender Schlüssel-Wert-Paare effizient vergleichen und zählen?

Antwort:

1. Über entsprechende Schlüssel-Wert-Paare iterieren:

Wie im Originalcode gezeigt:

<code class="python">for x_values, y_values in zip(x.iteritems(), y.iteritems()):
    if x_values == y_values:
        # They match
    else:
        # They don't match</code>

Diese Methode vergleicht Schlüssel-Wert-Paare korrekt, ihre Lesbarkeit kann jedoch verbessert werden.

2. Verwenden Sie ein Wörterbuchverständnis:

Dieser Ansatz ist prägnanter und eleganter:

<code class="python">shared_items = {k: x[k] for k in x if k in y and x[k] == y[k]}</code>

Dadurch wird ein neues Wörterbuch mit dem Namen shared_items erstellt, das nur die Schlüssel-Wert-Paare enthält, die in vorhanden sind sowohl x als auch y mit den gleichen Werten.

3. Übereinstimmende Paare zählen:

Um die Anzahl der übereinstimmenden Paare zu zählen, können wir die Funktion len() verwenden:

<code class="python">print(len(shared_items))</code>

Dadurch wird die Anzahl der Schlüssel-Wert-Paare ausgegeben sind in beiden Wörterbüchern gleich.

Das obige ist der detaillierte Inhalt vonWie kann man passende Schlüssel-Wert-Paare in zwei Wörterbüchern effizient zählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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