今天在学习为深度学习数据预处理的时候用了一下“__getitem__"方法,发现还挺好用,下面详细解释一下。 __getitem__(self,key): 把类中的属性定义为序列,可以使用__getitem__()函数输出序列属性中的某个元素,这个方法返回与指定键想关联的值。对序列来说,键 ...
一个类里面如果有 iter ,for循环就是找它取,没有的话就会找 getitem 。 如果自己定义类的话,我自己觉的还是先定义好 iter 比较好,因为如果调用 getitem 来执行循环读取速度也应该不会快,而且逻辑理解更加复杂。 前面一笔看过没有留心具体的执行情况。 In : class Foo: ...: def getitem self, pos : ...: print pos ... ...
2020-01-01 00:16 0 877 推荐指数:
今天在学习为深度学习数据预处理的时候用了一下“__getitem__"方法,发现还挺好用,下面详细解释一下。 __getitem__(self,key): 把类中的属性定义为序列,可以使用__getitem__()函数输出序列属性中的某个元素,这个方法返回与指定键想关联的值。对序列来说,键 ...
python __getitem__()方法理解 如果在类中定义了__getitem__()方法,那么他的实例对象(假设为p)就可以这样p[key]取值。当实例对象做p[key]运算时,就会调用类中的__getitem__()方法。 输出结果为:abc p[key]返回值 ...
__getitem__ 单独实现这个魔法函数,可以让这个类成为一个可迭代的对象,并且可以通过使用下标获取类中元素值下标的元素 __iter__ 这个是返回一个可迭代的对象,如果一个类实现了这个魔法函数,那么这个类就是可迭代对象,并且实现了__next__这个魔法函数的话 ...
= value 会死循环 __getitem__:当访问不存在的属性时会调用该方法 __delitem ...
在字典和列表中我们经常使用[]来获取字典中的值或者列表中的元素,是因为字典和列表都内置了__getitem方法。 我们自定义一个类,当实例对象通过[]运算符取值时,会自动调用它的__getitem__方法 序列可以迭代,即 for i in P 内置方法 ...
如果在类中定义了__getitem__()方法,那么他的实例对象(假设为P)就可以这样P[key]取值。当实例对象做P[key]运算时,就会调用类中的__getitem__()方法。 # -*- coding:utf-8 ...
问题:那__getitem__可以替代__iter__方法吗 1.list 结果为 2.dict 结果为: 结论:当字段为索引行数据类型(如:list, tuple,str)时,可以替换,当字段为hash型类型 ...