Lambdas in Python benennen
Die Verwendung von Lambda-Ausdrücken in Python bietet eine prägnante Syntax zum Definieren anonymer Funktionen. Einige Entwickler stehen jedoch möglicherweise vor der Frage, ob es angemessen ist, Lambdas zu benennen, insbesondere innerhalb größerer Funktionen.
Laut PEP8, einem Codierungsstandard für Python, wird von der Benennung von Lambdas abgeraten. Der Grund dafür ist, dass Lambdas anonym sein sollen, sodass sie in Ausdrücke eingebettet werden können. Das Zuweisen eines Namens zu einem Lambda macht diesen Zweck zunichte, da es zu einer benannten Funktion wird.
Im bereitgestellten Beispiel erstellt der Autor ein benanntes Lambda namens Indexer, um eine komplexe Indizierung für Numpy-Arrays durchzuführen. Obwohl dieser Ansatz die Codeduplizierung reduziert, wird er aufgrund des Namensaspekts nicht als pythonisch betrachtet.
Stattdessen wird empfohlen, eine separate Funktion zu definieren, wenn die vom Lambda bereitgestellte Funktionalität außerhalb der einschließenden Funktion nicht benötigt wird. Dies ermöglicht eine klarere Struktur, verbessert die Lesbarkeit und entspricht den PEP8-Richtlinien.
Beispiel:
def fcn_operating_on_arrays(array0, array1): def indexer(a0, a1, idx): return a0[idx] + a1[idx] # Code using `indexer` return the_answer
Durch die Aufteilung der Indizierungsfunktion in eine benannte Funktion wird die Der Code wird modularer und entspricht den Best Practices von Pythonic.
Das obige ist der detaillierte Inhalt vonSoll ich meine Python-Lambdas benennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!