[英]Overloading [] operator in python?
是否可以在python中重載[]
運算符?
我想通過調用classname[elementname]
來訪問類的方法(就像在字典中一樣)。 這似乎不是必需的,但是類將包含子元素的數據庫元素封裝在一起,這些子元素也具有子元素,而子元素也具有...的子元素。
如果我從第3個繼承步驟中知道哪個孩子想要得到,則可以代替:
classnname.getChild(childname1).getChild(childname2).getChild(childname3)
使用更短更清潔的產品:
classnname[childname1][childname2][childname3]
您必須在classname
上實現魔術方法__getitem__
class classname:
def __getitem__(self, key):
return self.getChild(key)
請參閱Python文檔
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.