Den letzten übereinstimmenden Wert finden

Beginner

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

Einführung

In Python können wir Listenkomprehension und next() verwenden, um den Wert des letzten Elements in einer Liste zu finden, das einer gegebenen Prüfungsfunktion entspricht. Diese Herausforderung wird Ihre Fähigkeit testen, diese Werkzeuge zu verwenden, um ein Problem zu lösen.

Den letzten übereinstimmenden Wert finden

Schreiben Sie eine Funktion find_last(lst, fn), die eine Liste lst und eine Prüfungsfunktion fn als Argumente nimmt. Die Funktion sollte den Wert des letzten Elements in lst zurückgeben, für das fn True zurückgibt. Wenn kein Element der Prüfungsfunktion entspricht, sollte die Funktion None zurückgeben.

Um dieses Problem zu lösen, sollten Sie eine Listenkomprehension und next() verwenden, um die Liste in umgekehrter Reihenfolge durchzugehen und das letzte Element zurückzugeben, das der Prüfungsfunktion entspricht.

def find_last(lst, fn):
  return next(x for x in lst[::-1] if fn(x))
find_last([1, 2, 3, 4], lambda n: n % 2 == 1) ## 3

Zusammenfassung

In dieser Herausforderung haben Sie gelernt, wie Sie Listenkomprehension und next() verwenden, um den Wert des letzten Elements in einer Liste zu finden, das einer gegebenen Prüfungsfunktion entspricht. Dies ist ein nützliches Werkzeug zum Filtern und Verarbeiten von Daten in Python.