迭代器
1.什么是迭代器:迭代指的是一个重复的过程,每一次重复都是基于上一次的结果而来的,迭代器指的是迭代取值的工具,该工具的特点是可以不依赖于索引取值。
2。为何要用迭代器:为了找出一种可以不依赖于索引的迭代取值方式
3.如何用迭代器:可迭代的对象:但凡内置有.__iter__方法的对象都称之为可迭代的对象;迭代器对象:既内置有.__iter__方法,又内置有__next__方法。
可迭代对象:str,list,tuple,dict,set,文件对象。
迭代器对象:文件对象。
yield关键字:只能用在函数内
在函数内但凡包含有yield关键字,再去执行函数,就不会立刻运行函数体代码了,会得到一个返回值,该返回值称之为生成器对象,生成器本质就是迭代器。
总结yield:
1.提供一种自定义迭代器的解决方案
2.yield可用于返回值
yield和return,相同点:都可以用于返回值,不同点:yield可以暂停函数,yield可以返回多次值,而return返回一次值后函数体代码就终止。