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

পাইথনে dir() মেথডের ব্যবহার

dir() ফাংশন যেকোনো অবজেক্ট—যেমন ফাংশন, মডিউল, স্ট্রিং, লিস্ট, ডিকশনারি ইত্যাদির—অ্যট্রিবিউট এবং মেথডের তালিকা ফেরত দেয়। এই নিবন্ধে আমরা dir() কীভাবে বিভিন্ন পরিস্থিতিতে ব্যবহার করা যায় তা দেখব।

শুধু dir()

যদি কোনো অতিরিক্ত মডিউল ইমপোর্ট না করে শুধু dir() প্রিন্ট করা হয়, তখন পাইথন প্রোগ্রাম আরম্ভ হওয়ার সাথে সাথে উপলব্ধ স্ট্যান্ডার্ড লাইব্রেরির মেথড ও অ্যট্রিবিউটের তালিকা দেখা যায়।

উদাহরণ

print(dir())

আউটপুট

['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__']

অতিরিক্ত মডিউল ইমপোর্ট করার পর

যখন আমরা অতিরিক্ত মডিউল ইমপোর্ট করি এবং ভেরিয়েবল তৈরি করি, সেগুলো বর্তমান পরিবেশে যোগ হয়। ফলে dir() দিয়ে প্রিন্ট করলে সেগুলোও তালিকাভুক্ত থাকে।

উদাহরণ

import math
x = math.ceil(10.03)
print(dir())

আউটপুট

['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'math', 'x']

নির্দিষ্ট মডিউলের জন্য dir()

কোনো নির্দিষ্ট মডিউলের মেথড ও অ্যট্রিবিউট জানতে চাইলে সেটি dir()র প্যারামিটার হিসেবে পাস করলে হয়। নিচে math মডিউলের উদাহরণ দেওয়া হলো।

উদাহরণ

import math
print(dir(math))

আউটপুট

['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', '...', 'nan', '...', 'trunc']

ক্লাসের জন্য dir()

বিল্ট-ইন নয়, বরং ইউজার-ডিফাইন ক্লাসের জন্যও dir() ব্যবহার করা যায়। ক্লাসে __dir__ মেথড ওভাররাইড করলে dir() সেই ক্লাসের কাস্টম অ্যাট্রিবিউটগুলো দেখাবে।

উদাহরণ

class moviecount:
    def __dir__(self):
        return ['Red Man', 'Hello Boy', 'Happy Monday']
movie_dtls = moviecount()
print(dir(movie_dtls))

আউটপুট

['Happy Monday', 'Hello Boy', 'Red Man']
  1. পাইথনে Tkinter-এ destroy() মেথড

  2. পাইথন Tkinter-এ after মেথড

  3. পাইথন Tkinter-এ geometry মেথড

  4. পাইথনে <code>zfill()</code> মেথড কী?