python生成器推导式用法简单示例


Posted in Python onOctober 08, 2019

本文实例讲述了python生成器推导式用法。分享给大家供大家参考,具体如下:

1.生成器推导式是继列表推导式后的有一中python推导式,他比列表推导式速度更快,占用的内存也更少。

2.使用生成器对象时,可以根据需要将他转化为列表或者元组,也可以是哟个生成器对像__next__()方法或内置函数next()进行遍历,其具有惰性求值的特点,进行一次遍历后便不能再次方位内部元素,即访问一次立马清空生成器对象

>>> g = ((i+2)**2 for i in range(10))
>>> list(g)
[4, 9, 16, 25, 36, 49, 64, 81, 100, 121]
>>> list(g)  #便利结束后再次访问时内部元素已经清空
[]
>>> g = ((i+2)**2 for i in range(10))  #重新建立一个生成器对象
>>> next(g)
4
>>> next(g)
9
>>> g.__next__()
16
>>> g.__next__()
25
>>> g.__next__()
36
>>> next(g)
49
>>> next(g)
64
>>> next(g)
81
>>> next(g)
100
>>> next(g)  #当next的下一个超出生成的范围时,抛出异常
121
>>> next(g)
Traceback (most recent call last):
 File "<pyshell#41>", line 1, in <module>
  next(g)
StopIteration

更多关于Python相关内容可查看本站专题:《Python列表(list)操作技巧总结》、《Python字符串操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python之wxPython应用实例
Sep 28 Python
利用Python中SocketServer 实现客户端与服务器间非阻塞通信
Dec 15 Python
解决出现Incorrect integer value: '' for column 'id' at row 1的问题
Oct 29 Python
Pipenv一键搭建python虚拟环境的方法
May 22 Python
python生成密码字典的方法
Jul 06 Python
Python pygorithm模块用法示例【常见算法测试】
Aug 16 Python
python装饰器使用实例详解
Dec 14 Python
django下创建多个app并设置urls方法
Aug 02 Python
详解python metaclass(元类)
Aug 13 Python
Anaconda的安装与虚拟环境建立
Nov 18 Python
python3访问字典里的值实例方法
Nov 18 Python
Python可视化动图组件ipyvizzu绘制惊艳的可视化动图
Apr 21 Python
python实现把二维列表变为一维列表的方法分析
Oct 08 #Python
python读文件的步骤
Oct 08 #Python
Django之使用celery和NGINX生成静态页面实现性能优化
Oct 08 #Python
Django中使用haystack+whoosh实现搜索功能
Oct 08 #Python
python 使用while写猜年龄小游戏过程解析
Oct 07 #Python
python getpass模块用法及实例详解
Oct 07 #Python
Python拆分大型CSV文件代码实例
Oct 07 #Python
You might like
php的$_FILES的临时储存文件与回收机制实测过程
2013/07/12 PHP
js和php邮箱地址验证的实现方法
2014/01/09 PHP
CodeIgniter连贯操作的底层原理分析
2016/05/17 PHP
Extjs 几个方法的讨论
2010/01/28 Javascript
重写javascript中window.confirm的行为
2012/10/21 Javascript
JS 实现导航栏悬停效果(续2)
2013/09/24 Javascript
根据配置文件加载js依赖模块
2014/12/29 Javascript
javascript白色简洁计算器
2015/05/04 Javascript
javascript获取文档坐标和视口坐标
2015/05/26 Javascript
轻松学习jQuery插件EasyUI EasyUI创建CRUD应用
2015/11/30 Javascript
JavaScript学习笔记之ES6数组方法
2016/03/25 Javascript
vue动画打包后失效问题的解决方法
2018/09/18 Javascript
Koa代理Http请求的示例代码
2018/10/10 Javascript
利用原生JavaScript实现造日历轮子实例代码
2019/05/08 Javascript
element-ui tree结构实现增删改自定义功能代码
2020/08/31 Javascript
解决Vue keep-alive 调用 $destory() 页面不再被缓存的情况
2020/10/30 Javascript
JavaScript事件概念详解(区分静态注册和动态注册)
2021/02/05 Javascript
[01:00:44]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#1COL VS Alliance第三局
2016/03/04 DOTA
python用pickle模块实现“增删改查”的简易功能
2017/06/07 Python
Python决策树分类算法学习
2017/12/22 Python
flask使用session保存登录状态及拦截未登录请求代码
2018/01/19 Python
python实现闹钟定时播放音乐功能
2018/01/25 Python
python获取网页中所有图片并筛选指定分辨率的方法
2018/03/31 Python
selenium3+python3环境搭建教程图解
2018/12/07 Python
python实现石头剪刀布小游戏
2021/01/20 Python
俄罗斯外国汽车和国产汽车配件网上商店:Движком
2020/04/19 全球购物
优秀士兵先进事迹
2014/02/06 职场文书
《七颗钻石》教学反思
2014/02/28 职场文书
《赶海》教学反思
2014/04/20 职场文书
医院深入开展党的群众路线教育实践活动实施方案
2014/08/27 职场文书
三方股份合作协议书
2014/10/13 职场文书
红十字会救护培训简讯
2015/07/20 职场文书
毕业季聚会祝酒词!
2019/07/04 职场文书
springboot中rabbitmq实现消息可靠性机制详解
2021/09/25 Java/Android
全面盘点MySQL中的那些重要日志文件
2021/11/27 MySQL
Linux安装apache服务器的配置过程
2021/11/27 Servers