কনস্ট্রাক্টর হলো একটি বিশেষ মেথড, যা কোনো ক্লাস থেকে অবজেক্ট তৈরি করার সময় স্বয়ংক্রিয়ভাবে চালু হয়। এটি মূলত অবজেক্ট ইনিশিয়ালাইজ করার জন্য ব্যবহৃত হয়। সহজভাবে বলতে গেলে, যখন কোনো অবজেক্ট তৈরি করা হয়, তখন কনস্ট্রাক্টর প্রথমে ডাটা সেট করে দেয়, যেন সেই অবজেক্ট কাজ করতে প্রস্তুত হয়।
পাইথনে কনস্ট্রাক্টর তৈরি করতে init নামক একটি বিশেষ মেথড ব্যবহার করা হয়। এটি একটি ডান্ডার (double underscore) মেথড এবং ক্লাসের ভিতরে ডিফাইন করা হয়।
কনস্ট্রাক্টর সবসময় self আর্গুমেন্ট নেয়, যা অবজেক্টটিকে রেফার করে।
উদাহরণ:
class Student:
def __init__(self, name, age):
self.name = name
self.age = age
def display_info(self):
print(f"Name: {self.name}, Age: {self.age}")
# অবজেক্ট তৈরি করা
student1 = Student("Zakaria", 16)
student1.display_info()
Output:
Name: Zakaria, Age: 16
init মেথড: যখন Student ক্লাস থেকে student1 অবজেক্ট তৈরি করা হয়, তখন init মেথড স্বয়ংক্রিয়ভাবে চালু হয়।
self প্যারামিটার: self প্যারামিটারটি বর্তমান অবজেক্টকে নির্দেশ করে এবং এর মাধ্যমে ভেরিয়েবল অ্যাসাইন করা হয়।
ইনিশিয়ালাইজেশন: অবজেক্ট তৈরি করার সময় নাম এবং বয়স ইনপুট হিসেবে নেওয়া হয় এবং অবজেক্টে সংরক্ষণ করা হয়।