Python中迭代器和生成器器如何使用
1、迭代器: 迭代器一般用于访问集合元素,它访问的方式是从集左佯抵盗合第一个元素开始,直到全部访问完所有元素,并且只能从前藻焐瞬赧往后单方向访问。迭代器有两个基本方法:iter()和next(),其中iter()用于创建迭代器对象,如下图所示,Python中字符串,列表或者元组数据类型都可以用于创建迭代器对象。
2、创建迭代器对象后,需要对该对象进行遍历,此时就会用到next()方法,如下图所示,该方法可以按照调用次数依次将集合中的元素输出。
3、使用for循环对迭代器对象元素进行循环打印,如下图所示。
4、使用while循环和next()方法,对迭代器对象进行循环输出,如下图所示。
5、生成器 简单来说,在Python中使用了yield的函数都可以被称为生成器,其返回为一个迭代器对象。每次运行到yield时,函数会保存当前运行信息,在函数运行完成时,整邗锒凳审个函数会返回一个迭代器对象,该对象中元素包含所有yield的暂存值,如下图中以for循环代码所示。
6、对以上结果进行分析,如下图所示,第一次循环时i为0,a经过a=a+i计算依旧是0,所以第一次yield保存的a值为0,以此类推,得出0,1,3,6,10的结果。
7、以while循环进行yield生成器测试,如下图所示。
8、总结: 如果是平常使用时,可以用迭代器中iter()生成对象,再结合for或者while循环使用next()方法即可。 当创建的函数需要返回迭代器对象时,则可以使用yield,将会非常方便。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:71
阅读量:61
阅读量:69
阅读量:68
阅读量:78