迭代器,生成器,面向过程 2018-3-30

迭代器

迭代器:是一个重复的过程,并且重复都是基于上一次结果得到的,迭代取值的工具

可迭代对象:但凡内置有__iter__方法的对象,都是可迭代对象

                可迭代对象有:list,tuple,dict,set ,文件等

                迭代对象,res__next__,执行可拿到迭代对象中的一个值

                                 __iter__,执行可拿到迭代器本身

      有点:1,提供一种不依赖索引取值的方式         2,迭代器更加节省内存

      缺点:1,驱逐麻烦,一个一个的取          2,取值一次性,只能往后取,无法用len获取长度

      文件本生就是迭代器对象

      for循环称之为迭代器循环,in后方的是可迭代对象

生成器:

总结yield:1,提供一种自定义迭代器的方法,可以在函数内用yield关键字,调用函数拿到的结果就是一个生成器,

                       即迭代器

                    2,yield,可以想return一样用于返回值,但是,yield可以返回多次值

                          yield 可以保存函数的执行的状态

面向过程编程:面向编程的过程的编程,只要是过程

                   优点:复杂问题流程化,进而简单化

                   缺点:扩展性极差,修改一个阶段后面其他阶段都可能做修改

                   应用:扩展性要求极低

原文地址:https://www.cnblogs.com/tianyu529/p/8678404.html