Entwicklung mit Python für Fortgeschrittene
Jasmin Ludolf
Senior Data Science Content Developer
def average(values):
average_value = sum(values) / len(values)
return average_value
lambda Schlüsselwort
lambda
lambda Schlüsselwort
lambda arguments
lambda Schlüsselwort
lambda arguments:
lambda Schlüsselwort$$
lambda arguments: expression
x für ein einzelnes Argument.expression ist das selbe wie der Funktionskörper.return-Anweisung wird nicht benötigt.$$
# Lambda average function
print(lambda x: sum(x) / len(x))
<function <lambda> at 0x7f11ab813d80>
# Custom average function
def average(x):
return sum(x) / len(x)
print(average)
<function average at 0x7f11ab813ec0>
# Get the average
(lambda x: sum(x) / len(x))
# Get the average
(lambda x: sum(x) / len(x))([3, 6, 9])
$$
$$
# Print the average
print((lambda x: sum(x) / len(x))([3, 6, 9]))
6.0
# Store lambda function as a variable average = lambda x: sum(x) / len(x)# Call the average function print(average([3, 6, 9]))
6.0
# Lambda function with two arguments power = lambda x, y: x**y# Raise 2 to the power of 3 print(power(2, 3))
8
map() wendet eine Funktion auf alle Elemente in einem iterierbaren Objekt an.names = ["john", "sally", "leah"]# Apply a lambda function inside map() capitalize = map(lambda x: x.capitalize(), names)print(capitalize)
<map object at 0x7fb200529c10>
# Convert to a list
print(list(capitalize))
['John', 'Sally', 'Leah']
| Szenario | Funktionstyp |
|---|---|
| Komplizierte Aufgabe | Individuell |
| Die gleiche Aufgabe mehrmals | Individuell |
| Einmalige Ausführung | Lambda |
| Einfache Aufgabe | Lambda |
Entwicklung mit Python für Fortgeschrittene