Heim >häufiges Problem >Was sind die Funktionen höherer Ordnung in Python?

Was sind die Funktionen höherer Ordnung in Python?

小老鼠
小老鼠Original
2023-11-10 16:42:141313Durchsuche

Funktionen höherer Ordnung umfassen Map(), Filter(), Reduce(), Lambda-Funktion, Partial() usw. Detaillierte Einführung: 1. map(): Diese integrierte Funktion akzeptiert eine Funktion und ein oder mehrere iterierbare Objekte als Eingabe und gibt dann einen Iterator zurück, der die Eingabefunktion auf jedes Element des iterierbaren Objekts anwendet. 2. filter(): Diese integrierte Funktion verwendet eine Funktion und ein iterierbares Objekt als Eingabe und gibt einen Iterator zurück, der diese Elemente erzeugt, sodass die Eingabefunktion „True“ usw. zurückgibt.

Was sind die Funktionen höherer Ordnung in Python?

Funktionen höherer Ordnung in Python beziehen sich normalerweise auf eine A-Funktion das eine oder mehrere Funktionen als Eingabe (Parameter) akzeptiert oder eine Funktion als Ausgabe zurückgibt. Dieses Konzept kommt häufig in der funktionalen Programmierung vor.

Hier sind einige Beispiele für Funktionen höherer Ordnung in Python:

map(): Diese integrierte Funktion akzeptiert eine Funktion und ein oder mehrere iterierbare Objekte als Eingabe und gibt eine Funktion zurück, die die Eingabefunktion auf jedes dieser Objekte anwendet iterierbare Objekte. Iterator von Elementen.

def square(n):  
    return n * n  
numbers = [1, 2, 3, 4, 5]  
squared = map(square, numbers)  
print(list(squared))  # Output: [1, 4, 9, 16, 25]

filter(): Diese integrierte Funktion verwendet eine Funktion und ein iterierbares Objekt als Eingabe und gibt einen Iterator zurück, der die Elemente erzeugt, die dazu führen, dass die Eingabefunktion „True“ zurückgibt.

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

reduce(): Diese integrierte Funktion akzeptiert eine Funktion und ein iterierbares Objekt als Eingabe und verwendet dann die Funktion, um die Elemente im iterierbaren Objekt zwei nach zwei zu kombinieren, bis nur noch ein Element übrig bleibt.

from functools import reduce  
def add(x, y):  
    return x + y  
numbers = [1, 2, 3, 4, 5]  
sum_of_numbers = reduce(add, numbers)  
print(sum_of_numbers)  # Output: 15

Lambda-Funktion: Die Lambda-Funktion ist eine Möglichkeit, anonyme Funktionen zu erstellen, die sich sehr gut für kurze Funktionsdefinitionen eignet.

squared = list(map(lambda x: x ** 2, [1, 2, 3, 4, 5]))  
print(squared)  # Output: [1, 4, 9, 16, 25]

partial(): Diese Funktion aus dem functools-Modul wird verwendet, um Funktionsparameter teilweise anzuwenden.

from functools import partial  
def add(x, y):  
    return x + y  
add_five = partial(add, 5)  # Create a function that adds 5 to its argument.  
print(add_five(3))  # Output: 8

Das obige ist der detaillierte Inhalt vonWas sind die Funktionen höherer Ordnung in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn