কম্পিউটার টিউটোরিয়াল

পাইথনে স্ট্রিং থেকে ফাংশন নাম দিয়ে মডিউলের ফাংশন কল করা

পাইথনে getattr() ফাংশন ব্যবহার করে স্ট্রিং আকারে ফাংশন নাম দিয়ে মডিউল, ক্লাস বা অবজেক্ট থেকে ফাংশন/মেথড ডাইনামিক্যালি কল করা যায়।

সিনট্যাক্স

import module_name
func = getattr(module_name, 'function_name')
result = func()

উদাহরণ

import fibo
result = getattr(fibo, 'baz')
print(result)

ব্যাখ্যা

  • getattr(obj, name) — obj অবজেক্ট থেকে name নামক অ্যাট্রিবিউট (ফাংশন, মেথড, ভেরিয়েবল) রিটার্ন করে।
  • এটি মডিউল-লেভেল ফাংশন, ক্লাস মেথড, ইনস্ট্যান্স মেথড — সব জায়গায় কাজ করে।
  • যদি অ্যাট্রিবিউট না পাওয়া যায়, তবে AttributeError রেইজ হয় (ঐচ্ছিক থার্ড আর্গামেন্ট দিয়ে ডিফল্ট মান দেওয়া যায়)।

ব্যবহার ক্ষেত্র

প্লাগিন সিস্টেম, কনফিগারেশন-ভিত্তিক ফাংশন কল, RPC, ডাইনামিক ডিসপ্যাচ ইত্যাদিতে এটি খুব কাজে আসে।

  1. পাইথনে স্ট্রিং থেকে সর্বোচ্চ অ্যালফাবেটিক্যাল ক্যারেক্টার পাওয়া

  2. পাইথনে আর্গুমেন্ট লিস্ট দিয়ে ফাংশন কল করার পদ্ধতি

  3. MATLAB থেকে পাইথন ফাংশন কল করার পদ্ধতি

  4. পাইথন মডিউল কমান্ড লাইন থেকে কল করা