AnyCompiler

Lambda Functions

Lambda ek chhota, unnamed function hai jo ek single expression mein define hota hai. Yeh un situations ke liye hain jahan poora def function likhna overkill hoga kisi aisi cheez ke liye jo aap sirf ek baar, wahin use karoge jahan woh define hua hai.

square = lambda x: x * x
print(square(5))
Output
25

lambda x: x * x ka matlab hai "ek function jo x leta hai aur x * x return karta hai" — functionally def square(x): return x * x likhne jaisa hi hai, bas ek line mein condense kiya hua. Lambdas mein sirf ek expression ho sakta hai, multiple statements nahi.

Lambdas actually kahan use hote hain

Aap lambdas ko zyada tar seedhe map() (har item ko transform karo) aur filter() (sirf condition match karne wale items rakho) jaise functions mein pass hote hue dekhoge, jahan ek alag naam wala function define karna itni chhoti cheez ke liye unnecessary ceremony hogi.

numbers = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x * x, numbers))
print(squared)

evens = list(filter(lambda x: x % 2 == 0, numbers))
print(evens)
Output
[1, 4, 9, 16, 25]
[2, 4]

Aage: list comprehensions — bilkul isi kaam ke liye Python ka zyada idiomatic alternative, map() aur filter() ki jagah.

Practice Exercise

double naam ka ek lambda likho jo apna argument 2 se multiply kare, phir double(9) print karo.