আমি __getitem__পাইথন ডক্সের বেশিরভাগ ডকুমেন্টেশনের মধ্য দিয়ে গিয়েছি , তবে আমি এখনও এর অর্থ বুঝতে পারি না।
সব তাই আমি যে বুঝতে পারেন __getitem__মত কল প্রয়োগ করতে ব্যবহৃত হয় self[key]। তবে এর ব্যবহার কী?
বলুন যে আমি একটি পাইথন ক্লাস এইভাবে সংজ্ঞায়িত করেছি:
class Person:
def __init__(self,name,age):
self.name = name
self.age = age
def __getitem__(self,key):
print ("Inside `__getitem__` method!")
return getattr(self,key)
p = Person("Subhayan",32)
print (p["age"])
এটি প্রত্যাশিত ফলাফল প্রত্যাবর্তন করে। তবে কেন __getitem__প্রথম স্থানে ব্যবহার করবেন ? আমি শুনেছি পাইথন __getitem__অভ্যন্তরীণভাবে কল করে। তবে কেন এটি করে?
কেউ দয়া করে আরও বিস্তারিতভাবে ব্যাখ্যা করতে পারেন?
__getitem__আপনার উদাহরণে ব্যবহার ধারণা অনেক দেখা যায় না, কিন্তু মনে কর তুমি একটি কাস্টম তালিকা- বা অভিধান মত বর্গ লিখতে, বিদ্যমান কোডটি ব্যবহার সঙ্গে কাজ করার আছে প্রয়োজন []। এটি এমন একটি পরিস্থিতি যেখানে __getitem__দরকারী।