python3各种__xxitem__使用

代码:

# 各种item的使用方法
class ItemTest(object):
    def __init__(self):
        self.test = {"me": "I am here!",
                    "who": "Who is there?"}
    def __getitem__(self, item):
        print('调用getitem')
        return self.test[item]
    def __setitem__(self, key, value):
        print("调用setitem")
        self.test[key] = value
    def __delitem__(self, key):
        print("调用delitem")
        del self.test[key]
a = ItemTest()
# 设置对象的键和值
a['oliver'] = 'peace'
# 调用__setitem__函数
print(a['oliver']) 
# 调用__getitem__函数
print(a["who"])
# 调用__setitem__函数
del a["who"]
print(a.test)

结果:

调用setitem
调用getitem
peace
调用getitem
Who is there?
调用delitem
{'me': 'I am here!', 'oliver': 'peace'}
[Finished in 0.0s]

总结:

 "__getitem__()" 使用于对象的带键类型.

 "__setitem__()" 使用于对象存在键值对类型
 "__delitem__()" 使用与删除带已存在键对象时运行

猜你喜欢

转载自blog.csdn.net/weixin_43690548/article/details/88861220