day13

迭代器

1.什么是迭代器:迭代指的是一个重复的过程,每一次重复都是基于上一次的结果而来的,迭代器指的是迭代取值的工具,该工具的特点是可以不依赖于索引取值。

2。为何要用迭代器:为了找出一种可以不依赖于索引的迭代取值方式

3.如何用迭代器:可迭代的对象:但凡内置有.__iter__方法的对象都称之为可迭代的对象;迭代器对象:既内置有.__iter__方法,又内置有__next__方法。

可迭代对象:str,list,tuple,dict,set,文件对象。

迭代器对象:文件对象。

yield关键字:只能用在函数内

在函数内但凡包含有yield关键字,再去执行函数,就不会立刻运行函数体代码了,会得到一个返回值,该返回值称之为生成器对象,生成器本质就是迭代器。

总结yield:

1.提供一种自定义迭代器的解决方案

2.yield可用于返回值

yield和return,相同点:都可以用于返回值,不同点:yield可以暂停函数,yield可以返回多次值,而return返回一次值后函数体代码就终止。

原文地址:https://www.cnblogs.com/endlesswaltz/p/9721020.html