map, filter, reduce

🐍 Python Functional Programming map(), filter(), reduce() – বিস্তারিত গাইড

Python-এ Functional Programming একটি শক্তিশালী প্রোগ্রামিং স্টাইল যেখানে function কে data হিসেবে ব্যবহার করা হয়। এই স্টাইলে সবচেয়ে বেশি ব্যবহৃত তিনটি ফাংশন হলো map, filter এবং reduce

📌 Functional Programming কী?

  • Loop ছাড়াই collection এর উপর কাজ করা যায়
  • Code হয় ছোট, পরিষ্কার এবং readable
  • Data immutability বজায় থাকে
  • Complex logic সহজ হয়

🔹 map() ফাংশন

map() একটি iterable (list, tuple ইত্যাদি) এর প্রতিটি element-এর উপর একটি function apply করে এবং একটি নতুন iterable রিটার্ন করে।

🧠 Syntax:

map(function, iterable)
    

📝 উদাহরণ: একটি list এর প্রতিটি সংখ্যার square বের করা

numbers = [1, 2, 3, 4, 5]

result = map(lambda x: x * x, numbers)

print(list(result))
    

✅ Output:

[1, 4, 9, 16, 25]
    

🔹 filter() ফাংশন

filter() একটি iterable থেকে নির্দিষ্ট শর্ত অনুযায়ী element বেছে নেয়। যেগুলোর জন্য function True রিটার্ন করে, সেগুলোই রাখা হয়।

🧠 Syntax:

filter(function, iterable)
    

📝 উদাহরণ: শুধু even সংখ্যা বের করা

numbers = [1, 2, 3, 4, 5, 6, 7, 8]

result = filter(lambda x: x % 2 == 0, numbers)

print(list(result))
    

✅ Output:

[2, 4, 6, 8]
    

🔹 reduce() ফাংশন

reduce() একটি iterable এর সব element কে একটিমাত্র value-তে রূপান্তর করে। এটি ব্যবহার করতে functools module থেকে import করতে হয়।

🧠 Syntax:

from functools import reduce

reduce(function, iterable)
    

📝 উদাহরণ: সব সংখ্যার যোগফল বের করা

from functools import reduce

numbers = [1, 2, 3, 4, 5]

result = reduce(lambda a, b: a + b, numbers)

print(result)
    

✅ Output:

15
    

📊 map vs filter vs reduce

Function কাজ Output
map() সব element পরিবর্তন করে নতুন iterable
filter() শর্ত অনুযায়ী element নেয় filtered iterable
reduce() সব element combine করে একটি value

✨ সংক্ষেপে মনে রাখবেন

  • map() → পরিবর্তন
  • filter() → বাছাই
  • reduce() → একত্রিত

✔ এই তিনটি ফাংশন ভালোভাবে বুঝলে Python-এ Clean & Professional Code লেখা অনেক সহজ হয়ে যাবে।

👼 Quiz
/

লোড হচ্ছে...

Interview Questions:

1. map() কী করে?

প্রতিটি element এ function প্রয়োগ করে।

2. filter() কী?

শর্ত অনুযায়ী element নেয়।

3. reduce() কী?

একাধিক মান কমিয়ে একটি মানে আনে।