Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Filter Function in Use | Höherwertige Funktionen und Lambdas
Funktionale Programmierkonzepte in Python
Abschnitt 2. Kapitel 3
single

single

bookFilter Function in Use

Swipe um das Menü anzuzeigen

Sie haben bereits gesehen, wie höherwertige Funktionen wie map es ermöglichen, eine Funktion auf jedes Element einer Sequenz anzuwenden. Eine weitere wichtige höherwertige Funktion in Python ist filter.

Die Funktion filter wird verwendet, um Elemente aus einer Sequenz auszuwählen, basierend darauf, ob sie eine bestimmte Bedingung erfüllen. Sie nimmt zwei Argumente entgegen: eine Funktion, die für jedes Element True oder False zurückgibt, und die zu filternde Sequenz. Das Ergebnis ist ein Iterator, der nur diejenigen Elemente enthält, für die die Funktion True zurückgibt. Dies macht filter besonders nützlich, wenn bestimmte Elemente aus einer Liste, einem Tupel oder einem anderen Iterable anhand eines Kriteriums extrahiert werden sollen, wie zum Beispiel gerade Zahlen, positive Werte oder Zeichenketten einer bestimmten Länge.

123456
def is_even(n): return n % 2 == 0 numbers = [1, 2, 3, 4, 5, 6] even_numbers = list(filter(is_even, numbers)) print(even_numbers)
copy

Dieser Code verwendet die Funktion filter(), um eine neue Liste zu erstellen, die nur die geraden Ganzzahlen aus einer bestehenden Sammlung enthält. Dies geschieht durch die Definition einer Prädikatsfunktion, is_even(n). Die Funktion filter durchläuft die Liste numbers, wendet diese Überprüfung auf jedes Element an und verwirft alle, die die Bedingung nicht erfüllen. Abschließend wird das resultierende Filter-Objekt wieder in eine Liste umgewandelt, wodurch die Ausgabe entsteht.

Note
Hinweis

Bei Verwendung der Funktion filter wird ein Filter-Objekt zurückgegeben, das ein Iterator ist — keine Liste. Wenn das Ergebnis von filter direkt ausgegeben wird, erscheint eine Ausgabe ähnlich wie:

<filter object at 0xfffec885eb30>

Um die gefilterten Werte als Liste zu erhalten, muss das Filter-Objekt mit list() umgewandelt werden.

Aufgabe

Wischen, um mit dem Codieren zu beginnen

Sie werden die Funktion filter verwenden, um positive Zahlen aus einer Liste auszuwählen.

  • Die Funktion is_positive soll True zurückgeben, wenn das Argument größer als null ist, andernfalls False.
  • Die Funktion filter_positive soll die Funktion filter zusammen mit is_positive verwenden, um eine neue Liste zu erstellen, die nur die positiven Zahlen aus der Eingabeliste enthält.
  • Die Funktion soll diese neue Liste zurückgeben.
  • Vergessen Sie nicht, pass zu entfernen.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 3
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

some-alt