python函数-迭代器&生成器 一.迭代器 1 可迭代协议 迭代:就是类似for循环,将某个数据集内的数据可以“一个挨着一个取出来” 可迭代协议: ① 协议内容:内部实现__iter__方法 ② 验证方法:dir()方法.通过dir()方法查看是否含有__iter__方法 ③ __iter__方法的作用:可迭代的数据类型执行__iter__方法后会生成一个迭代器对象 print([1,2].__iter__()) 结果 <list_iterator object at 0x1024784a…
列表生成式写法: [ i*2 for i in range(10) ]也可以带函数 [ fun(i) for i in range(10) ] 生成器:一边循环一边计算的机制称为生成器.在常用函数中,使用yield语句来返回结果,一次只返回一个结果.(可以节省内存,只有在调用的时候才会生成相应的数据 )特点:只记录当前的位置,只有一个__next__()方法.和列表的区别:生成器只有在调用的时候才会生成.生成器表达式:同列表解析语法,只不过是把列表解析的[]换成()比如:l = [ x*x fo…