Heim >Backend-Entwicklung >Python-Tutorial >Python-Programm zum Vergleichen von Elementen in zwei Wörterbüchern
Wörterbücher sind ein leistungsstarker Datentyp in Python, mit dem Sie Daten als Schlüssel-Wert-Paare speichern können. In diesem Artikel besprechen wir, wie Elemente in zwei Wörterbüchern in Python verglichen werden Wörterbuchelemente und stellen Beispiele dafür bereit.
In Python kann ein Wörterbuch erstellt werden, indem eine Folge von Elementen in geschweifte Klammern {} eingefügt und durch Kommas (,) getrennt wird. Wörterbücher enthalten Schlüssel-Wert-Paare, wobei eines der Schlüssel und das andere der entsprechende Wert ist.
Werte in einem Wörterbuch können von jedem Datentyp sein und dupliziert werden, während Schlüssel nicht wiederholt werden können und unveränderlich und eindeutig sein müssen. Beim Namen von Schlüsseln in einem Wörterbuch muss die Groß-/Kleinschreibung beachtet werden Integrierte Funktion dict(). Ein leeres Wörterbuch kann einfach durch Platzieren in geschweifte Klammern { }.
erstellt werdenWir können ein Wörterbuch folgendermaßen deklarieren: −
thisdict = { "brand": "Ford", "model": "Mustang", year": 1964 }
In diesem Artikel erfahren Sie, wie Sie Elemente zweier Wörterbücher in Python mit drei verschiedenen Methoden vergleichen.
Bei dieser Methode verwenden wir den doppelten Gleichheitszeichen-Vergleichsoperator, um zwei Zeichenfolgen zu vergleichen. Der ==-Operator gibt „true“ zurück, wenn die linke und rechte Seite des Operators gleich sind, und gibt „false“ zurück, wenn sie nicht gleich sind.
Wenn die beiden uns zur Verfügung gestellten Wörterbücher gleich und identisch sind, gibt dieser Operator „true“ zurück und wir können daraus schließen, dass die beiden Wörterbücher gleich sind. Wenn sie nicht gleich sind, gibt er „false“ zurück.
Im folgenden Beispiel verwenden wir den Operator ==, um zwei Wörterbücher zu vergleichen
dict1 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'mango' } dict2 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'grapes'} if dict1 == dict2: print (" dict1 is equal to dict2 ") else: print (" dict1 is not equal to dict2 ")
Die Ausgabe für den obigen Code ist –
dict1 is not equal to dict2
Bei dieser Methode vergleichen wir die Elemente zweier Wörterbücher nacheinander, indem wir die Länge eines Wörterbuchs iterieren und bei jeder Iteration den Schlüssel und Wert im entsprechenden Wörterbuch mit dem entsprechenden Schlüssel-Wert-Paar im anderen Wörterbuch vergleichen.
Wir prüfen auch die Länge beider Wörterbücher. Wenn sie nicht gleich sind, können wir direkt daraus schließen, dass die beiden Wörterbücher nicht gleich sind. Um den Wert zu erhalten, der einem Schlüssel im Wörterbuch entspricht, verwenden wir die Funktion .get, die den Wert des Schlüssels als Argument angibt.
Im folgenden Beispiel werden wir das tun.
dict1 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'mango' } dict2 = { 'first' : 'banana' , 'second' : 'guava' , 'third' : 'grapes'} if len (dict1) != len (dict2): print ("The dictionaries are not equal ") else: flag=0 for i in dict1: if dict1.get(i) != dict2.get(i): flag=1 break if flag==0: print (" dict1 is equal to dict2 ") else: print (" dict1 is not equal to dict2 ")
Die Ausgabe des obigen Programms ist wie folgt:
dict1 is not equal to dict2
Bei dieser Methode verwenden wir das Listenverständnis, um zwei Wörterbücher zu vergleichen. Das Listenverständnis ist eine kürzere Möglichkeit, eine for-Schleife in einer Liste, einem Tupel oder einem Wörterbuch zu schreiben. Bei dieser Methode durchlaufen wir eines der Wörterbücher und vergleichen die Werte Für den gleichen Schlüssel in beiden Wörterbüchern ist derselbe oder nicht. Wenn sie gleich sind, sind die Wörterbücher nicht gleich oder nicht gleich
Beispiel
dict1 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'mango' } dict2 = { 'first' : 'banana' , 'second' : 'guava' , 'third' : 'grapes' } ans = all ( dict2.get (key) == value for key , value in dict1.items() ) if ans == 'true': print ("dict1 and dict2 are equal") else: print ("dict1 and dict2 are not equal")Ausgabe
dict1 and dict2 are not equalFazit
Die erste Methode beinhaltete die Verwendung des Gleichheitsoperators ( ==). Die zweite Methode beinhaltete die Verwendung der Iteration, um jedes einzelne Schlüssel-Wert-Paar beider Wörterbücher zu überprüfen. Bei der letzten Methode verwendeten wir die Listenverständnismethode von Python, um über den Schlüssel zu iterieren Wertepaar eines Wörterbuchs und überprüfen Sie die Werte für die Schlüssel in beiden Wörterbüchern und vergleichen Sie sie
Die Zeitkomplexität des 1.
Ansatzes beträgt O (1), da er einen einfachen Vergleich verwendet, während die anderen beiden Methoden eine Zeitkomplexität von O (n) haben, wobei n die Länge des Wörterbuchs istDas obige ist der detaillierte Inhalt vonPython-Programm zum Vergleichen von Elementen in zwei Wörterbüchern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!