python__getitem__,getitem方法
当我们要查询一个元素时,通常会选择用函数来解决,实际的方法也可以达到同样的效果。但是,你不会像函数那样频繁地使用类方法,所以边肖引入了_getitem_ class方法,它的主要功能是获取你想要公式化的元素。至于效果是否如此神奇,你需要和边肖的朋友一起往下看。
每当这个__getitem__方法在一个类中定义时,它的实例对象(假设为P)可以是这样的。
当实例对象执行p[key]操作时,p[key]的值将调用类中的方法__getitem__。
一般来说,如果要通过索引访问元素,可以在类中定义这个方法(__getitem__(self,key))。
Python的神奇方法__getitem__可以使对象实现迭代功能,这样就可以用for.在.迭代对象。
动物类:
def__init__(self,animal_list):
self.animals_name=animal_list
动物=动物([狗,车,鱼])
对于动物动物:
印刷品(动物)
-
回溯(mostrecentcalllast):
文件“E:/PyObject/gettime.py”,第7行,在模块中
对于动物动物:
使用for迭代对象时,键入:“Animal”objectsnotterabl.在.如果对象没有实现_ _ __iter__ __next__ _ _ iterator协议,Python的解释器会寻找__getitem__来迭代对象。如果没有__getitem__的定义,这个解释器会报错对象不是迭代器:typeerror: animal 对象是不可迭代的。
python中的_getitem_就是这么用的。如果使用__getitem__,找不到对象,就会对对象进行错误处理,比较特殊,朋友们可以记下来。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。