Lambda Function Syntax
The lambda function syntax provides a concise way to define anonymous functions:
lambda parameters: expression
- Parameters: Can include multilpe arguments, default values, and keyword arguments
- Expression: A single expression that evaluates to a return value
Practical Applications of Lambda Functions
Defining Simple Operations
Lambda functions are ideal for small, single-purpose operations that don't require full function definitions:
multiply = lambda num1, num2: num1 * num2
result = multiply(7, 8)
print(result) # Output: 56
Functional Programming with Built-in Functions
Lambda functions work effectively with Python's functional programming tools:
Using map() to transform elements:
original_values = [2, 4, 6, 8]
squared_values = list(map(lambda value: value ** 2, original_values))
print(squared_values) # Output: [4, 16, 36, 64]
Using filter() for conditional selection:
numbers = [10, 15, 20, 25, 30, 35]
even_numbers = list(filter(lambda num: num % 2 == 0, numbers))
print(even_numbers) # Output: [10, 20, 30]
Using sorted() with custom keys:
student_records = [('Alice', 85), ('Bob', 92), ('Charlie', 78)]
sorted_by_grade = sorted(student_records, key=lambda record: record[1])
print(sorted_by_grade) # Output: [('Charlie', 78), ('Alice', 85), ('Bob', 92)]