前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >python生成器迭代器区别,range与xrange区别,yield

python生成器迭代器区别,range与xrange区别,yield

作者头像
用户7886150
修改于 2020-12-21 03:00:45
修改于 2020-12-21 03:00:45
7520
举报
文章被收录于专栏:bit哲学院bit哲学院

参考链接: Python | range()不返回迭代器

迭代器:迭代就是循环。迭代器是可以被next() 函数调用并不断返回下一个值的对象称为迭代器。 

生成器:一边循环一边计算的机制, 优点是节约内存,迭代到下次调用使用的参数使上一次保留的 

可于for循环的(统称可迭代对象Iterable,可以用isinstance({},Iterable)判断,),只能往前不能后退: 

一类是集合数据类型,如list,tuple,dict,set,str等 

一类是generator,包括生成器(比如a=(x for x in range(10),括号表示)和带yield的generator function 

 生成器不但可以用for,还可以用next 

range直接生成一个可迭代的list,xrange 生成器,省内存  

yield生成函数。每次生成一个,从上次生成的位置继续生成 

参考: 

https://www.cnblogs.com/tianyiliang/p/7811041.html 

https://www.cnblogs.com/wj-1314/p/8490822.html

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档