__getitem__ __setitem__ __delitem__ 使用

Posted python

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了__getitem__ __setitem__ __delitem__ 使用相关的知识,希望对你有一定的参考价值。




#__getitem__ __setitem__ __delitem__运行设置key value值了
class fun:

def __init__(self):
print(‘test‘)

def run(self):
print(‘run‘)

def __getitem__(self, item):
print(‘__getitem__‘,‘item:‘,item)

def __setitem__(self, key, value):
print(‘__setitem__‘,‘key:‘,key,‘value:‘,value)
self.__dict__[key] = value #设置字典值,print(f.__dict__)否则打印为空

def __delitem__(self, key):
print(‘__delitem__‘,‘key‘,key)
self.__dict__.pop(key) #删除字典值
f = fun()
f.run()
f[‘sn‘] = 1231


f[‘name‘] = 1 #设置值的时候,执行__setitem__
f[‘name‘] #获取值的时候,执行__getitem__
del f[‘name‘] #删除值的时候,执行__delitem__

print(f.__dict__) #结果是{‘sn‘: 1231}

以上是关于__getitem__ __setitem__ __delitem__ 使用的主要内容,如果未能解决你的问题,请参考以下文章

__getitem__ __setitem__ __delitem__ 使用

python学习之__getitem__,__setitem__,__delitem__

python - __setitem__/__getitem__/__delitem__类的内置方法

__getitem__\__setitem__\__delitem__

为啥当我使用 [:] 时我的子类的 __getitem__ 和 __setitem__ 没有被调用?

python 魔法方法之:__getitem__ __setitem__ __delitem__