Heim  >  Artikel  >  Backend-Entwicklung  >  Python-Programm zum Testen, ob ein Set-Element in einer Liste vorhanden ist

Python-Programm zum Testen, ob ein Set-Element in einer Liste vorhanden ist

WBOY
WBOYnach vorne
2023-09-04 21:49:041126Durchsuche

Python-Programm zum Testen, ob ein Set-Element in einer Liste vorhanden ist

In diesem Artikel erfahren Sie, wie Sie überprüfen, ob in einer Liste in Python ein Set-Element vorhanden ist.

Anwendungsmethode

  • Verwenden Sie die Funktion „any()“

  • Verwenden Sie den bitweisen &-Operator

  • Verwenden Sie Counter()-, Filter()- und Lambda-Funktionen

Beispiel

Angenommen, wir haben einen Eingabesatz und eine Eingabeliste genommen. Wir werden nun mit der oben genannten Methode prüfen, ob ein Eingabesatzelement in der Eingabeliste vorhanden ist.

Eintreten

inputSet = {4, 8, 1, 3, 5, 7}
inputList = [7, 15, 20]

Ausgabe

Checking whether any set element present in the input list: True

Im obigen Beispiel ist 7 sowohl in der Menge als auch in der Liste vorhanden, das Ergebnis ist also True

Methode 1: Verwenden Sie die Funktion „any()“

Die Funktion any() gibt True zurück, wenn ein Element in der Iterable wahr ist, andernfalls gibt sie False zurück.

Grammatik

any(iterable)

Algorithmus (Schritte)

Hier sind die Algorithmen/Schritte, die befolgt werden müssen, um die erforderliche Aufgabe auszuführen –.

  • Erstellen Sie eine Variable zum Speichern des Eingabesatzes und drucken Sie den angegebenen Satz aus.

  • Erstellen Sie eine weitere Variable zum Speichern der Eingabeliste.

  • Verwenden Sie die Funktion any(), um zu prüfen, ob ein Satzelement in der Eingabeliste vorhanden ist, indem Sie den Eingabesatz durchlaufen und prüfen, ob das aktuelle Element in der Eingabeliste vorhanden ist.

  • Drucken Sie das Ergebnis als booleschen Wert.

Beispiel

Das folgende Programm verwendet die Funktion „any()“, um zu prüfen, ob ein Eingabesatzelement in der Eingabeliste vorhanden ist, und gibt „True“ zurück, wenn vorhanden, andernfalls „False“ –

# input set
inputSet = {4, 8, 1, 3, 5, 7}

# printing the input set
print("Input set:\n", inputSet)

# input list
inputList = [7, 15, 20]

# checking whether any set element is present in the input list using any() function
result = any(i in inputSet for i in inputList)

# printing the output
print("Checking whether any set element present in the input list:", result)

Ausgabe

Bei der Ausführung generiert das obige Programm die folgende Ausgabe:

Input set:
{1, 3, 4, 5, 7, 8}
Checking whether any set element present in the input list: True

Methode 2: Bitweise & Operator verwenden

Bitweiser &-Operator – „&“ ist ein bitweiser Operator, der Zahlen vergleicht (binär). Wenn beide Bits 1 sind, wird jedes Bit auf 1 gesetzt.

Algorithmus (Schritte)

Hier sind die Algorithmen/Schritte, die befolgt werden müssen, um die erforderliche Aufgabe auszuführen -

  • Verwenden Sie die Funktion set(), um die gegebene Eingabe in eine Menge umzuwandeln.

  • Überprüfen Sie mit den Operatoren &, ob ein Set-Element in der Eingabeliste vorhanden ist (setzen Sie jedes Bit auf 1, wenn beide Bits 1 sind) und verwenden Sie die Funktion bool() (gibt den booleschen Wert des angegebenen Objekts zurück)

  • Drucken Sie die Ergebnisse aus.

Beispiel

Das folgende Programm verwendet bitweise Operatoren &, um zu prüfen, ob ein Eingabesatzelement in der Eingabeliste vorhanden ist, und gibt True zurück, wenn vorhanden, andernfalls False –

# input set
inputSet = {4, 8, 1, 3, 5, 7}

# printing the input set
print("Input set:\n", inputSet)

# input list
inputList = [9, 15, 20]

# Convert the given list to set using the set() function
inputListSet = set(inputList)

# checking whether any set element present in the input list

# using & operator(checks for common element) and converting to boolean
result = bool(inputSet & inputListSet)

# printing the output
print("Checking whether any set element present in the input list:", result)

Ausgabe

Bei der Ausführung generiert das obige Programm die folgende Ausgabe:

Input set:
{1, 3, 4, 5, 7, 8}
Checking whether any set element present in the input list: False

Methode 3: Verwendung von Counter()-, Filter()- und Lambda-Funktionen

filter()-Funktion – Filtert eine angegebene Sequenz mithilfe einer Funktion, die bestimmt, ob jedes Element in der Sequenz wahr oder falsch ist.

Counter()-Funktion – Unterklassen hashbarer Objekte zählen. Beim Aufruf/Aufruf wird implizit eine iterierbare Hash-Tabelle erstellt.

Lambda()-Funktion

Die

Lambda-Funktion ist eine kleine anonyme Funktion.

Lambda-Funktion kann eine unbegrenzte/beliebige Anzahl von Parametern haben, aber nur einen Ausdruck.

Grammatik

lambda arguments : expression

Algorithmus (Schritte)

Hier sind die Algorithmen/Schritte, die befolgt werden müssen, um die erforderliche Aufgabe auszuführen -

  • Verwenden Sie das Schlüsselwort import, um die Counter-Funktion aus dem Collection-Modul zu importieren.

  • Verwenden Sie die Funktion Counter(), um die Häufigkeiten aller Eingabelistenelemente in Wörterbuchform abzurufen.

  • Verwenden Sie die Filterfunktion, um alle Eingabesatzelemente zu filtern, wenn sie im obigen Häufigkeitswörterbuch vorhanden sind.

  • Die Länge der gefilterten Liste ist größer als 1, wenn gemeinsame Elemente vorhanden sind.

  • Verwenden Sie die if-Bedingungsanweisung, um zu überprüfen, ob die obige Bedingung wahr ist, und drucken Sie sie entsprechend aus.

Beispiel

Das folgende Programm verwendet die Funktionen Counter(), filter() und Lambda, um zu prüfen, ob ein Eingabesatzelement in der Eingabeliste vorhanden ist, und gibt „True“ zurück, wenn vorhanden, andernfalls „False“ –

# importing a Counter function from the collections module
from collections import Counter

# input set
inputSet = {4, 8, 1, 3, 5, 7}

# printing the input set
print("Input set:\n", inputSet)

# input list
inputList = [7, 15, 20, 7]

# getting the frequency of list elements using the Counter() function

# Here it returns frequencies as a dictionary
elements_freq = Counter(inputList)

# Traversing in the input Set using the lambda function

# Checking if the set element exists in the keys of the dictionary

# Filtering all the elements which satisfy the above condition
output = list(filter(lambda k: k in elements_freq.keys(), inputSet))

# Check if there are any filtered elements
if(len(output) > 0):
   output = True

# If no elements are common then the output will be False
else:
   output = False

# printing the output
print("Checking whether any set element present in the input list:", output)

Ausgabe

Bei der Ausführung generiert das obige Programm die folgende Ausgabe:

Input set:
{1, 3, 4, 5, 7, 8}
Checking whether any set element present in the input list: True

Fazit

In diesem Artikel haben wir gelernt, wie man mit drei verschiedenen Methoden ermittelt, ob eine Menge ein Element in einer Liste enthält. Wir haben auch gelernt, wie man jedes iterierbare Objekt wie eine Liste, ein Tupel oder ein beliebiges iterierbares Objekt mit der Funktion set() in eine Menge umwandelt und wie man den &-Operator verwendet, um bei gegebener Menge gemeinsame Elemente für beide Mengen zu finden.

Das obige ist der detaillierte Inhalt vonPython-Programm zum Testen, ob ein Set-Element in einer Liste vorhanden ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen