Python reduce()-Funktion
Beschreibung
reduce()Die Funktion akkumuliert die Elemente in der Parametersequenz.
Die Funktion führt die folgenden Operationen für alle Daten in einer Datensammlung (Liste, Tupel usw.) aus: Zuerst verwendet sie die an reduce übergebene Funktion (die zwei Parameter hat), um mit dem 1. und 2. Element in der Sammlung zu arbeiten, dann verwendet sie die Funktion, um das erhaltene Ergebnis mit dem dritten Datenelement zu verarbeiten, und erhält schließlich ein Ergebnis.
Hinweis:In Python 3.x wurde reduce() in das Modul functools verschoben. Wenn wir es verwenden möchten, müssen wir das Modul functools importieren, um die Funktion reduce() aufzurufen:
from functools import reduce
Syntax
Die Syntax der Funktion reduce() lautet wie folgt:
reduce(function, iterable[, initializer])
Parameters
- function -- Eine Funktion mit zwei Parametern
- iterable -- Ein iterierbares Objekt
- initializer -- Optional, initialer Parameter
Rückgabewert
Gibt das berechnete Ergebnis der Funktion zurück.
Beispiele
Die folgenden Beispiele demonstrieren die Verwendung von reduce():
Beispiel (Python 2.x)
# -*- coding: UTF-8 -*-
def add(x, y) : # Addiere zwei Zahlen
return x + y
sum1 = reduce(add, [1,2,3,4,5]) # Berechnen Sie die Summe der Liste: 1+2+3+4+5
sum2 = reduce(lambda x, y: x+y, [1,2,3,4,5]) # Verwenden Sie eine anonyme Lambda-Funktion
print(sum1)
print(sum2)
Beispiel (Python 3.x)
from functools import reduce
def add(x, y) : # Addiere zwei Zahlen
return x + y
sum1 = reduce(add, [1,2,3,4,5]) # Berechnen Sie die Summe der Liste: 1+2+3+4+5
sum2 = reduce(lambda x, y: x+y, [1,2,3,4,5]) # Verwenden Sie eine anonyme Lambda-Funktion
print(sum1)
print(sum2)
Die Ausgabe der obigen Beispiele ist:
15 15Andere Erweiterungen
Python Built-in-Funktionen