Understanding
Lambda Functions



What are Lambda Functions?

Lambda functions, also known as anonymous functions, are functions that are defined without a name. They are typically used for short, simple operations where defining a full function might feel excessive or unnecessary.

Why Use Lambda Functions?

In programming, there are many cases where you need a function temporarily — for example, as an argument to another function. Lambda functions allow you to define small pieces of functionality inline without cluttering your codebase with lots of function definitions.

Basic Syntax of a Lambda Function

lambda (parameters): expression

This represents an unnamed function that accepts input via parameters and returns the result of the expression.

Example 1: Lambda Function to Add Two Numbers

add = lambda (a, b): a + b
result = add(3, 5)
print(result)

Output:

8

Explanation:

Here, lambda (a, b): a + b creates an anonymous function that takes two arguments and returns their sum. It is assigned to a variable add so it can be reused like a regular function.

Question:

Why not just define a regular function with a name?

Answer: You can — and in many cases, you should. However, lambda functions are preferred when the function is small and used only once or within another function call like sorting, filtering, or mapping.

Example 2: Lambda Function Inside Another Function

def apply_operation(operation, x, y):
    return operation(x, y)

result = apply_operation(lambda (a, b): a * b, 4, 6)
print(result)

Output:

24

Explanation:

Here, instead of creating a separate function to multiply two numbers, we passed a lambda function directly as an argument to apply_operation. This makes the code shorter and cleaner for simple tasks.

Example 3: Sorting a List Using Lambda

items = [(1, 'apple'), (3, 'banana'), (2, 'cherry')]
sorted_items = sort(items, key=lambda (item): item[1])
print(sorted_items)

Output:

[(1, 'apple'), (3, 'banana'), (2, 'cherry')]

Explanation:

The lambda function lambda (item): item[1] tells the sort function to sort the list based on the second element of each tuple (the fruit name). This is a common use-case where lambda functions improve readability and maintainability.

Common Use-Cases of Lambda Functions

Best Practices for Lambda Functions

Question:

Can a lambda function have multiple lines?

Answer: No. Lambda functions are limited to a single expression. For multiple statements or complex logic, use a regular function definition.

Summary

Lambda functions are powerful tools that allow concise expression of simple functions. While they are not a replacement for regular functions, they shine in situations where brevity and simplicity are valued, especially in functional programming contexts.



Welcome to ProgramGuru

Sign up to start your journey with us

Support ProgramGuru.org

Mention your name, and programguru.org in the message. Your name shall be displayed in the sponsers list.

PayPal

UPI

PhonePe QR

MALLIKARJUNA M