Wo ist Pythons Produktanalogon von sum()?
Pythons vielseitige sum()-Funktion bietet eine praktische Möglichkeit, die Summe von Zahlen in zu berechnen eine Folge. Einige Entwickler haben jedoch nach einer ähnlichen Funktion gesucht, die in der Lage ist, eine Multiplikation auf einem iterierbaren Wert durchzuführen. Entgegen der landläufigen Meinung ist eine solche Funktion nicht in der Python-Standardbibliothek enthalten.
Da es keine integrierte „product()“-Funktion gibt, hat sich die Entwicklergemeinschaft verschiedene Problemumgehungen ausgedacht. Ein bemerkenswerter Ansatz besteht darin, die Funktion „reduce()“ in Verbindung mit dem Operatormodul zu nutzen.
Erstellen einer benutzerdefinierten Produktfunktion
Die Funktion „red()“ akzeptiert eine iterierbare und eine Binärfunktion und wendet die Funktion auf jedes Element in der Iterable an und akkumuliert das Ergebnis:
from functools import reduce from operator import mul # Example usage: reduce(mul, (3, 4, 5), 1) # Returns: 60
Die Funktion „operator.mul“ stellt die für die Produktberechnung erforderliche Multiplikationsfunktion bereit. Der optionale dritte zu reduzierende Parameter stellt einen Anfangswert dar, der in diesem Fall 1 ist. Dieser Anfangswert dient als Ausgangspunkt für die Produktakkumulation.
Obwohl Guido van Rossum, der Erfinder von Python, zunächst ein Veto gegen die Einbeziehung von einlegte Als dedizierte „product()“-Funktion bietet die Reduce()-Problemumgehung eine praktische Alternative für die Multiplikation von Iterables.
Das obige ist der detaillierte Inhalt vonPythons Äquivalent zu sum(): Wo ist die „Product()'-Alternative?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!