পাইথন "ম্যাজিক পদ্ধতি" শব্দটি ব্যবহার করে , কারণ সেই পদ্ধতিগুলি আপনার প্রোগ্রামের জন্য সত্যই যাদু করে। পাইথনের যাদু পদ্ধতি ব্যবহারের বৃহত্তম সুবিধাগুলির মধ্যে একটি হ'ল তারা বিল্ট-ইন প্রকারের মতো জিনিসগুলি আচরণ করার সহজ উপায় সরবরাহ করে। এর অর্থ আপনি বেসিক অপারেটরগুলি সম্পাদন করার কুৎসিত, পাল্টা স্বজ্ঞাত এবং অমানুষিক উপায়গুলি এড়াতে পারবেন।
নিম্নলিখিত উদাহরণ বিবেচনা করুন:
dict1 = {1 : "ABC"}
dict2 = {2 : "EFG"}
dict1 + dict2
Traceback (most recent call last):
File "python", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'dict' and 'dict'
এটি একটি ত্রুটি দেয়, কারণ অভিধানের প্রকারটি সমর্থন করে না। এখন, আসুন অভিধানের ক্লাসটি বাড়ানো যাক এবং "__add__" ম্যাজিক পদ্ধতি যুক্ত করুন:
class AddableDict(dict):
def __add__(self, otherObj):
self.update(otherObj)
return AddableDict(self)
dict1 = AddableDict({1 : "ABC"})
dict2 = AddableDict({2 : "EFG"})
print (dict1 + dict2)
এখন, এটি নিম্নলিখিত আউটপুট দেয়।
{1: 'ABC', 2: 'EFG'}
এই পদ্ধতিটি যুক্ত করে হঠাৎ যাদু ঘটেছে এবং আপনি যে ত্রুটিটি আগে পেয়েছিলেন তা চলে গেছে has
আমি আশা করি, এটি আপনার কাছে বিষয়গুলি পরিষ্কার করে দেয়। আরও তথ্যের জন্য, দেখুন:
পাইথনের যাদু পদ্ধতিগুলির একটি গাইড (রাফা কেটলার, ২০১২)
len()
বাreversed()
অবজেক্টের অনেক ধরনের ক্ষেত্রে প্রযোজ্য, কিন্তু একটি পদ্ধতি যেমনappend()
শুধুমাত্র ইত্যাদি সিকোয়েন্স ক্ষেত্রে প্রযোজ্য