Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich Argumente für Python-Funktionen mithilfe von functools.partial vordefinieren?
Argumentbindung in Python-Funktionen verstehen
Angenommen, Sie möchten eine Funktion erstellen, die später mit bestimmten vordefinierten Argumenten oder mit weniger zusätzlichen Argumenten aufgerufen werden kann Argumente. Wie kann dies in Python erreicht werden?
Lösung: functools.partial
Die Lösung liegt in der Verwendung der Funktion functools.partial. Es gibt eine aufrufbare Funktion zurück, die eine Funktion umschließt, wobei einige oder alle ihrer Argumente eingefroren sind. Dadurch können Sie die umschlossene Funktion später mit den bereits angewendeten eingefrorenen Argumenten aufrufen.
Beispielverwendung
Lassen Sie uns demonstrieren, wie Argumente mit gebunden werden functools.partial:
import functools print_hello = functools.partial(sys.stdout.write, "Hello world\n") print_hello()
Ausgabe:
Hello world
Dieser Code erstellt eine Funktion print_hello, die beim Aufruf immer „Hallo Welt“ ausgibt. Die Funktion functools.partial hat das erste Argument von sys.stdout.write an die Zeichenfolge „Hello world“ gebunden.
Äquivalenter Lambda-Ausdruck
Der obige Code ist äquivalent zum folgenden Lambda-Ausdruck:
print_hello = lambda *a, **kw: sys.stdout.write("Hello world\n", *a, **kw)
Mit anderen Worten: functools.partial bietet eine bequeme Möglichkeit, eine neue Funktion zu erstellen durch teilweises Anwenden von Argumenten auf eine vorhandene Funktion.
Das obige ist der detaillierte Inhalt vonWie kann ich Argumente für Python-Funktionen mithilfe von functools.partial vordefinieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!