1.容器:只要实现contains方法都是容器,可以使用in来判断是否存在
2.迭代器:对象要想使用 for 的方式迭代出容器内的所有数据,这就需要这个类实现「迭代器协议」
在 Python 中,实现迭代器协议就是实现以下 2 个方法:
iter:这个方法返回对象本身,即 self
next:这个方法每次返回迭代的值,在没有可迭代元素时,抛出 StopIteration 异常
3.可迭代对像:实现了iter即是可迭代对像
4.生成器:「生成器」是一个特殊的「迭代器」,并且它也是一个「可迭代对象」
生成器表达式,例如g = (i for i in range(5))
生成器函数
def gen(n):
for i in range(n):
yield i
网友评论