Header Ads

Header ADS

Python Lambda


Python Lambda
Aronnok
CSE 44 batch, AUST
lambda হল একটি ফাংশন যেটি যে কোনও সংখ্যক আর্গুমেন্ট নিতে পারে, 
তবে কেবলমাত্র একটির মত  expression থাকে।
আর মজার বেপার হলো একে anonymous function ও বলা হয়। 
anonymous function বলার কারন হল এটি অজানা আর্গুমেন্ট নিতে ব্যবহার করা হয়।
Syntax
Lambda arguments expression

Example

নিচের কোড টি লক্ষ কর। এটি একটি অজানা আর্গুমেন্ট এর সাথে ১০ যোগ করে। আমরা
print(x(5))→ এটি দারা অজানা আর্গুমেন্ট a এর মধ্যে ৫ কে অ্যাসাইন করেছি। এখানে আমাদের এক্সপ্রেশন a + 10

x = lambda a : a + 10
print(x(5))
Output:
15
>>> 
Lambda function with multiplies argument :
এটি যে কোনও সংখ্যক আর্গুমেন্ট নিতে পারে, তবে কেবলমাত্র একটির মত expression থাকে।

x = lambda a, b, c : a + b + c
print(x(562))

এখানে আমরা ৩টি আর্গুমেন্ট ব্যবহার করেছি a ,b, c

Output:
18
>>> 
Use of lambda function in a define function:
লাম্বদা কে আমরা যেকোন ফাংশন এ ব্যবহার করতে পারি। আমরা কেন লাম্বদা ব্যবহার করব ?
আপনি তাদের অন্য কোনও ফাংশনের ভিতরে বেনামী ফাংশন হিসাবে ব্যবহার করেন।

Code:
def myfunc(n):
  
return lambda a : a * n

mydoubler = myfunc(
2) → এখানে myfunc(n) কে কল করে  n এর মধ্যে 2 কে অ্যাসাইন করা হয়েছে।

print(mydoubler(11)) → এখানে myfunc(n) কে কল করে lambda a এর মধ্যে ১১ কে অ্যাসাইন করা হয়েছে।

Output:
22
>>> 

এবার নিচের code টি রান করে দেখো ।

def myfunc(n):
  
return lambda a : a * n

mydoubler = myfunc(
2)
mytripler = myfunc(
3)

print(mydoubler(11))
print(mytripler(11))

myfunc(n)কে একবার mydoubler এর মধ্যে কল করেছি আর একবার mytripler এর মধ্যে কল করা হয়েছে। যেখানে n এর মান একবার ২ আররেকবার ৩ অ্যাসাইন করা হয়েছে এবং a এর মান দুই ক্ষেত্রেই ১১ অ্যাসাইন করা হয়েছে ।

Most Important thing:
Use lambda functions when an anonymous function is required for a short period of time.



No comments

Powered by Blogger.