簡體   English   中英

在Python中實現類似列表的索引訪問

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM