Holen Sie sich den Unterschied zwischen zwei Listen in Python

Lakshay Kapoor 30 Januar 2023
  1. Verwenden Sie set.difference(), um den Unterschied zwischen zwei Listen in Python zu finden
  2. Verwenden Sie set.symmetric_difference(), um den Unterschied zwischen zwei Listen in Python zu finden
  3. Verwenden Sie das Schlüsselwort in, um den Unterschied zwischen den beiden Listen in Python zu finden
  4. Verwenden Sie die Bibliothek NumPy, um den Unterschied zwischen zwei Listen in Python zu finden
Holen Sie sich den Unterschied zwischen zwei Listen in Python

Es gibt viele Operationen, die an Datenstrukturen wie Listen, Dictionaries, Tupeln und Arrays ausgeführt werden. In Python werden diese Datenstrukturen in fast jedem Programm verwendet. Eine dieser Datenstrukturen sind die Listen in Python. Listen in der Python-Programmierung helfen dabei, mehr als ein Element in nur einer Variablen zu speichern. Den Unterschied zwischen zwei Listen herauszufinden ist eine sehr häufige Aufgabe, die fast jeder Programmierer durchführt.

Dieses Tutorial zeigt verschiedene Möglichkeiten, um den Unterschied zwischen zwei Listen in Python zu ermitteln.

Verwenden Sie set.difference(), um den Unterschied zwischen zwei Listen in Python zu finden

Die Methode set() hilft dem Benutzer, jede iterierbare Sequenz in eine iterierbare Sequenz umzuwandeln, die auch Set genannt wird. Die Iterables können eine Liste, ein Dictionary oder ein Tupel sein.

Die Funktion set.difference() wird verwendet, um die Differenz zwischen den beiden Mengen zurückzugeben. Diese Funktion eliminiert grundsätzlich die gemeinsamen Elemente in zwei Sätzen.

list_1 = [5, 10, 15, 20, 25, 30]
list_2 = [10, 20, 30, 40, 50, 60]

difference_1 = set(list_1).difference(set(list_2))
difference_2 = set(list_2).difference(set(list_1))

list_difference = list(difference_1.union(difference_2))
print(list_difference)

Ausgabe:

[50, 5, 40, 25, 60, 15]

Bei dieser Methode besteht der erste Schritt darin, die beiden Listen in zwei Variablen zu speichern. Mit der Funktion set() werden diese Listen in Mengen umgewandelt. Im gleichen Schritt wird mit der Funktion set.difference() der Unterschied zwischen den beiden Mengen ermittelt. Beachten Sie, dass die Variable difference_1 die Elemente in list_1 und nicht in list_2 erhält.

Die Variable difference_2 holt sich die Elemente, die in list_2 und nicht in list_1 enthalten sind. Danach wird die Funktion union verwendet, um alle Elemente aus den Variablen difference_1 und difference_2 zu erhalten. Zusätzlich wird die Funktion list() verwendet, um beide Mengen wieder in Listen zu konvertieren. Schließlich wird die resultierende Liste gedruckt.

Verwenden Sie set.symmetric_difference(), um den Unterschied zwischen zwei Listen in Python zu finden

Hier wird die Methode set() verwendet, um die beiden Listen zunächst in Mengen umzuwandeln.

Die Methode symmetric_difference() wird verwendet, um die Elemente zurückzugeben, die sich entweder im ersten Satz oder im zweiten Satz befinden. Diese Methode gibt den Schnittpunkt nicht wie die gemeinsamen Elemente der beiden Mengen zurück.

list_1 = [5, 10, 15, 20, 25, 30]
list_2 = [10, 20, 30, 40, 50, 60]

set_difference = set(list_1).symmetric_difference(set(list_2))
list_difference = list(set_difference)

print(list_difference)

Ausgabe:

[5, 40, 15, 50, 25, 60]

Die Methode set() wird auch verwendet, um Listen in Mengen umzuwandeln. Nachdem die Differenz ermittelt wurde, wird die Funktion list() verwendet, um den endgültigen Satz abzurufen und zu konvertieren, wie z. B. set_difference zurück in eine Liste zu konvertieren.

Verwenden Sie das Schlüsselwort in, um den Unterschied zwischen den beiden Listen in Python zu finden

Das Schlüsselwort in hilft zu überprüfen, ob ein Element in einer iterierbaren Sequenz wie einer Liste vorhanden ist oder nicht.

Auch in dieser Methode wird die Funktion append() verwendet. append() wird verwendet, um Elemente zu einer bestehenden Liste hinzuzufügen; es erstellt keine neue Liste, sondern modifiziert die ursprüngliche Liste, indem es Elemente hinzufügt.

list_1 = [5, 10, 15, 20, 25, 30]
list_2 = [10, 20, 30, 40, 50, 60]

list_difference = []
for element in list_1:
    if element not in list_2:
        list_difference.append(element)

print(list_difference)

Ausgabe:

[5, 15, 25]

Bei dieser Methode initialisieren wir zunächst die letzte zu druckende Liste mit null Elementen. Dann verwenden wir eine for-Schleife, um die Iteration mit der ersten Liste zu starten, die list_1 ist. Danach prüfen wir mit dem Schlüsselwort not in, ob ein Element in der zweiten Liste steht oder nicht.

Schließlich verwenden wir die Methode append(), um die Elemente, die nicht in der zweiten Liste enthalten sind, zur ursprünglichen Liste hinzuzufügen, d. h. list_difference . Der Nachteil dieser Methode besteht jedoch darin, dass sie die Elemente aus der zweiten Liste nicht zurückgibt.

Um diese Methode zu vereinfachen, verwenden Sie List Comprehensions. Das List Comprehensions ist eine Methode, die dabei hilft, eine neue Liste mit den Elementen einer bestehenden Liste zu erstellen.

list_1 = [5, 10, 15, 20, 25, 30]
list_2 = [10, 20, 30, 40, 50, 60]

list_difference = [element for element in list_1 if element not in list_2]

print(list_difference)

Ausgabe:

[5, 15, 25]

Verwenden Sie die Bibliothek NumPy, um den Unterschied zwischen zwei Listen in Python zu finden

Pythons NumPy-Bibliothek ist eine sehr häufig verwendete Bibliothek. Diese Bibliothek hilft dem Benutzer, Aufgaben in Arrays, Matrizen und linearer Algebra auszuführen.

Bei dieser Methode werden drei Funktionen der Bibliothek NumPy verwendet, um die Differenz zwischen zwei Listen zu ermitteln. Diese drei Funktionen sind np.array(), np.setdiff1d() und np.concatenate().

Ein Array ist die primäre Datenstruktur der Bibliothek NumPy. Die Funktion np.array() hilft Ihnen beim Erstellen eines Arrays und unterstützt Sie bei der Arbeit damit.

Die Funktion np.setdiff1d() hilft Ihnen, die Mengendifferenz zwischen zwei Arrays zu ermitteln und die Werte zurückzugeben, die sich im ersten Array und nicht im zweiten Array befinden.

Die Funktion np.concatenate wird verwendet, um zwei oder mehr NumPy-Arrays miteinander zu kombinieren. Überprüfen Sie das folgende Beispiel:

import numpy as np

list_1 = [5, 10, 15, 20, 25, 30]
list_2 = [10, 20, 30, 40, 50, 60]

array_1 = np.array(list_1)
array_2 = np.array(list_2)

difference_1 = np.setdiff1d(array_1, array_2)
difference_2 = np.setdiff1d(array_2, array_1)

list_difference = np.concatenate((difference_1, difference_2))
print(list(list_difference))

Ausgabe:

[5, 15, 25, 40, 50, 60]
Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn

Verwandter Artikel - Python List