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使用BeautifulSoup分析网页信息的方法
Apr 04 Python
使用Python编写vim插件的简单示例
Apr 17 Python
python单元测试unittest实例详解
May 11 Python
python字典DICT类型合并详解
Aug 17 Python
python中logging包的使用总结
Feb 28 Python
解决使用PyCharm时无法启动控制台的问题
Jan 19 Python
Python快速转换numpy数组中Nan和Inf的方法实例说明
Feb 21 Python
Python log模块logging记录打印用法解析
Jan 20 Python
django rest framework serializers序列化实例
May 13 Python
Python字典取键、值对的方法步骤
Sep 30 Python
详解Python requests模块
Jun 21 Python
python神经网络 tf.name_scope 和 tf.variable_scope 的区别
May 04 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边学边教》(02.Apache+PHP环境配置――上篇)
2006/12/13 PHP
ThinkPHP实现非标准名称数据表快速创建模型的方法
2014/11/29 PHP
帝国cms目录结构分享
2015/07/06 PHP
PHP实现对png图像进行缩放的方法(支持透明背景)
2015/07/15 PHP
Smarty环境配置与使用入门教程
2016/05/11 PHP
PHP静态方法和静态属性及常量属性的区别与介绍
2019/03/22 PHP
Yii框架Session与Cookie使用方法示例
2019/10/14 PHP
JS在textarea光标处插入文本的小例子
2013/03/22 Javascript
利用Jquery实现可多选的下拉框
2014/02/21 Javascript
自编jQuery插件实现模拟alert和confirm
2014/09/01 Javascript
JavaScript实现的字符串replaceAll函数代码分享
2015/04/02 Javascript
jQuery模拟原生态App上拉刷新下拉加载更多页面及原理
2015/08/10 Javascript
JavaScript中使用sencha gridpanel 编辑单元格、改变单元格颜色
2015/11/26 Javascript
Express实现前端后端通信上传图片之存储数据库(mysql)傻瓜式教程(二)
2015/12/10 Javascript
vue iView 上传组件之手动上传功能
2018/03/16 Javascript
微信小程序中使用ECharts 异步加载数据的方法
2018/06/27 Javascript
解析vue data不可以使用箭头函数问题
2018/07/03 Javascript
傻瓜式解读koa中间件处理模块koa-compose的使用
2018/10/30 Javascript
微信小程序实现form表单本地储存数据
2019/06/27 Javascript
学前端,css与javascript重难点浅析
2020/06/11 Javascript
javascript操作向表格中动态加载数据
2020/08/27 Javascript
[03:54]DOTA2英雄梦之声_第06期_昆卡
2014/06/23 DOTA
Python中的is和id用法分析
2015/01/26 Python
在Python中marshal对象序列化的相关知识
2015/07/01 Python
Python多进程入门、分布式进程数据共享实例详解
2019/06/03 Python
jupyter 使用Pillow包显示图像时inline显示方式
2020/04/24 Python
PyTorch: Softmax多分类实战操作
2020/07/07 Python
python PIL模块的基本使用
2020/09/29 Python
使用Python实现NBA球员数据查询小程序功能
2020/11/09 Python
canvas烟花特效锦集
2018/01/17 HTML / CSS
Europcar英国:英国汽车和货车租赁
2017/01/21 全球购物
Belstaff英国官方在线商店:Belstaff.co.uk
2021/02/09 全球购物
大学生优秀的自我评价分享
2013/10/22 职场文书
自荐信需注意事项
2014/01/25 职场文书
关于运动会的口号
2014/06/07 职场文书
教师素质教育心得体会
2016/01/19 职场文书