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

পাইথনে গেটার ও সেটার (Getter and Setter in Python)

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

প্রাইভেট অ্যট্রিবিউট এক্সেস (গেটার/সেটার ছাড়া)

class year_graduated:
    def __init__(self, year=0):
        self._year = year

grad_obj = year_graduated()
print(grad_obj)
print(grad_obj.year)

গেটার ও সেটার মেথড ব্যবহার

class year_graduated:
    def __init__(self, year=0):
        self._year = year
    def get_year(self):
        return self._year
    def set_year(self, a):
        self._year = a

grad_obj = year_graduated()
print(grad_obj.get_year())  # 0
grad_obj.set_year(2019)
print(grad_obj._year)       # 2019

ডাবল আন্ডারস্কোর (__) দিয়ে প্রাইভেট করা

class year_graduated:
    def __init__(self, year=32):
        self.__year = year
    def get_year(self):
        return self.__year
    def set_year(self, a):
        self.__year = a

grad_obj = year_graduated()
print(grad_obj._year)        # 32 (নেম मैंگلিং এর কারণে _year আছে)
print(grad_obj.get_year())   # AttributeError: __year এক্সেসibile নয়

@property ডেকোরেটর ব্যবহার (আধুনিক পদ্ধতি)

class year_graduated:
    def __init__(self, year=32):
        self._year = year
    @property
    def Aboutyear(self):
        return self.__year
    @Aboutyear.setter
    def Aboutyear(self, a):
        self.__year = a

grad_obj = year_graduated()
print(grad_obj._year)    # 32
grad_obj.year = 2018
print(grad_obj.year)     # 2018
  1. পাইথনে Kivy-তে Checkbox উইজেট ব্যবহার

  2. পাইথনে পলিমরফিজম (Polymorphism) - একই নাম, একাধিক রূপ

  3. পাইথন Kivy-তে বাটন একশন (Button Action) - ক্লিক ইভেন্ট হ্যান্ডলিং

  4. পাইথনে ইনহেরিটেন্স (Inheritance)