Das Vergleich von Listeninhalten in der Programmierung

PythonPythonBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Beim Programmieren ist es oft erforderlich, zu überprüfen, ob zwei Listen die gleichen Elemente enthalten, unabhängig von ihrer Reihenfolge. Dies kann in einer Vielzahl von Situationen nützlich sein, beispielsweise beim Überprüfen, ob zwei Datensätze die gleichen Werte haben, oder beim Verifizieren, ob eine Funktion das erwartete Ergebnis zurückgibt. In dieser Herausforderung werden Sie eine Funktion schreiben, die überprüft, ob zwei Listen den gleichen Inhalt haben.

Überprüfen, ob zwei Listen den gleichen Inhalt haben

Schreiben Sie eine Funktion have_same_contents(a, b), die zwei Listen als Argumente nimmt und True zurückgibt, wenn sie den gleichen Inhalt haben, andernfalls False. Die Funktion sollte überprüfen, ob die zwei Listen die gleichen Elemente enthalten, unabhängig von ihrer Reihenfolge.

Um dieses Problem zu lösen, können Sie die folgenden Schritte ausführen:

  1. Verwenden Sie set() auf der Kombination beider Listen, um die eindeutigen Werte zu finden.
  2. Iterieren Sie über sie mit einer for-Schleife und vergleichen Sie die count() jedes eindeutigen Werts in jeder Liste.
  3. Geben Sie False zurück, wenn die Zählungen für irgendein Element nicht übereinstimmen, andernfalls True.
def have_same_contents(a, b):
  for v in set(a + b):
    if a.count(v)!= b.count(v):
      return False
  return True
have_same_contents([1, 2, 4], [2, 4, 1]) ## True

Zusammenfassung

In dieser Herausforderung haben Sie gelernt, wie Sie überprüfen können, ob zwei Listen den gleichen Inhalt haben, unabhängig von ihrer Reihenfolge. Indem Sie die set()-Funktion verwenden und über die eindeutigen Werte iterieren, können Sie die count() jedes Elements in beiden Listen vergleichen, um zu bestimmen, ob sie den gleichen Inhalt haben.