[英]Implement list-like index access in Python
我希望能夠使用類似數組的語法訪問python對象的某些值,即:
obj = MyClass()
zeroth = obj[0]
first = obj[1]
這可能嗎? 如果是這樣,你如何在python類中實現這個?
您需要編寫或覆蓋__getitem__
, __setitem__
和__delitem__
。
例如:
class MetaContainer():
def __delitem__(self, key):
self.__delattr__(key)
def __getitem__(self, key):
return self.__getattribute__(key)
def __setitem__(self, key, value):
self.__setattr__(key, value)
這是一個非常簡單的類,允許對其屬性進行索引訪問。
使用__getitem__
和__setitem__
方法。
class MyClass:
def __getitem__(self, key):
return some_value_related_to_key
def __setitem__(self, key, value):
# set value (if needed)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.