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操作摄像头截图实现远程监控的例子
Mar 25 Python
python通过BF算法实现关键词匹配的方法
Mar 13 Python
利用python实现xml与数据库读取转换的方法
Jun 17 Python
在pycharm中设置显示行数的方法
Jan 16 Python
Python实现爬取亚马逊数据并打印出Excel文件操作示例
May 16 Python
Python pip替换为阿里源的方法步骤
Jul 02 Python
Python机器学习算法库scikit-learn学习之决策树实现方法详解
Jul 04 Python
Python脚本操作Excel实现批量替换功能
Nov 20 Python
python3.8与pyinstaller冲突问题的快速解决方法
Jan 16 Python
python 爬虫 实现增量去重和定时爬取实例
Feb 28 Python
Django中的模型类设计及展示示例详解
May 29 Python
python对 MySQL 数据库进行增删改查的脚本
Oct 22 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图片等比例缩放
2015/07/28 PHP
PHP判断FORM表单或URL参数来的数据是否为整数的方法
2016/03/25 PHP
通用于ie和firefox的函数 GetCurrentStyle (obj, prop)
2006/12/27 Javascript
js 图片缩放(按比例)控制代码
2009/05/27 Javascript
基于jQuery的可用于选项卡及幻灯的切换插件
2011/03/28 Javascript
jquery异步请求实例代码
2011/06/21 Javascript
JS实现静止元素自动移动示例
2014/04/14 Javascript
基于iframe实现类似于ajax的页面无刷新
2014/05/31 Javascript
实例讲解JavaScript中call、apply、bind方法的异同
2016/09/13 Javascript
微信端开发--登录小程序步骤
2017/01/11 Javascript
使用Promise链式调用解决多个异步回调的问题
2017/01/15 Javascript
JS实现多级菜单中当前菜单不随页面跳转样式而发生变化
2017/05/30 Javascript
JS实现按钮颜色切换效果
2020/09/05 Javascript
JS实现瀑布流布局
2017/10/21 Javascript
vue axios请求超时的正确处理方法
2018/04/02 Javascript
NodeJS 中Stream 的基本使用
2018/07/30 NodeJs
vue移动端html5页面根据屏幕适配的四种解决方法
2018/10/19 Javascript
vuex2中使用mapGetters/mapActions报错的解决方法
2018/10/20 Javascript
[00:34]TI7不朽珍藏III——地穴编织者不朽展示
2017/07/15 DOTA
python处理二进制数据的方法
2015/06/03 Python
Python中模块pymysql查询结果后如何获取字段列表
2017/06/05 Python
matplotlib subplots 设置总图的标题方法
2018/05/25 Python
python进程的状态、创建及使用方法详解
2019/12/06 Python
如何打包Python Web项目实现免安装一键启动的方法
2020/05/21 Python
Python控制台实现交互式环境执行
2020/06/09 Python
keras读取h5文件load_weights、load代码操作
2020/06/12 Python
利用CSS3实现炫酷的飞机起飞动画
2016/09/17 HTML / CSS
HTML5 Canvas的常用线条属性值总结
2016/03/17 HTML / CSS
新百伦折扣店:Joe’s New Balance Outlet
2016/08/20 全球购物
澳大利亚在线购买儿童玩具:Toy Universe
2017/12/28 全球购物
北京捷通华声语音技术有限公司Java软件工程师笔试题
2012/04/10 面试题
《大江保卫战》教学反思
2014/04/11 职场文书
经典禁毒标语
2014/06/16 职场文书
国家助学贷款承诺书
2015/04/30 职场文书
2016幼儿园教师节新闻稿
2015/11/25 职场文书
Flask使用SQLAlchemy实现持久化数据
2021/07/16 Python