পাইথন এ ডিফল্ট কিছু মেথড আছে যাদেরকে ম্যাজিক মেথড বলা হয়। এই মেথড গুলা __ মেথড নাম __ দিয়ে লেখা হয় .( আন্ডার স্কোর আন্ডার স্কোর একসাথে ডান্ডার ও বলা যায় )
__init__():
এটাকে কন্সট্রাক্টর বলা হয়। কাজ কি ?
কাজ হলো যখন কোনো ক্লাস এর ইনস্ট্যান্স create করা হয় তখন এই মেথড নিজে থেকে কল হয়। যেমন আমার যদি একটা ক্যাট ক্লাস নেই।
এই ক্লাস এ যদি আমরা ক্যাট এর নাম পেতে চাই তাহলে আমাদের Cat ().get_name ("Mini") কল করতে হবে। কিন্তু লেগ্স এন্ড কালার এর জন্য কিন্তু Cat ().get_name ("Mini") কল করা লাগসে না। আমি যখন এ Cat(4, "brown") initializeকরছি তখনই __init__ কল হইয়া গেসে ।
সাধারণত কোনো ক্লাস কল করার সাথে সাথে যদি কোনো ভ্যালু এসাইন করতে চাই তাহলে __init__ব্যবহার করা হয়।
__del__():
অবজেক্ট ডেস্ট্রয় করার জন্য একটা ডেস্ট্রাক্টর মেথড ও আসে। __del__ দিয়ে ডিফাইন করা হয়। ডেস্ট্রাক্টর normally refference using gurbage কালেক্ট করে রাখে। python ই অনেকে একে ইভিল ও বলে থাকে হাঃ হাঃ । পাইথন এ অবজেক্ট ডেস্ট্রয় এর দরকার পরে না আসলে কারণ স্কোপ এর বাইরে গালে এ অবজেক্ট ক্লিন হইয়া যাই।
__init__():
এটাকে কন্সট্রাক্টর বলা হয়। কাজ কি ?
কাজ হলো যখন কোনো ক্লাস এর ইনস্ট্যান্স create করা হয় তখন এই মেথড নিজে থেকে কল হয়। যেমন আমার যদি একটা ক্যাট ক্লাস নেই।
|
সাধারণত কোনো ক্লাস কল করার সাথে সাথে যদি কোনো ভ্যালু এসাইন করতে চাই তাহলে __init__ব্যবহার করা হয়।
__del__():
অবজেক্ট ডেস্ট্রয় করার জন্য একটা ডেস্ট্রাক্টর মেথড ও আসে। __del__ দিয়ে ডিফাইন করা হয়। ডেস্ট্রাক্টর normally refference using gurbage কালেক্ট করে রাখে। python ই অনেকে একে ইভিল ও বলে থাকে হাঃ হাঃ । পাইথন এ অবজেক্ট ডেস্ট্রয় এর দরকার পরে না আসলে কারণ স্কোপ এর বাইরে গালে এ অবজেক্ট ক্লিন হইয়া যাই।
class Cat:
def __init__(self, legs, colour, id):
self.legs = legs
self.color = color
self.id = id
print("set ID")
def __del__(self, id): print("destroy ID")
def
get_name(self, name):
return self.name = name
a = Cat(4, "black", 1)
Cat().__del__(1)
Informative blog. Thanks for sharing.
ReplyDeletePython Training in Hyderabad
Python Training
Python Online Training
Python Online Training in Hyderabad
Python Institute in Hyderabad
Python Course in Hyderabad