Python列表生成式与生成器操作示例


Posted in Python onAugust 01, 2018

本文实例讲述了Python列表生成式与生成器操作。分享给大家供大家参考,具体如下:

列表生成式:能够用来创建list的生成式

比如想要生成类似[1*1,2*2,3*3,…..100*100]的这种list

可以用

[x * x for x in range(1,11)]

这样就能生成,除此之外,后面还能添加判断条件来筛选

比如

[x * x for x in range(1,11) if x%2=0]

这样就能筛选出仅有偶数的平方

还能用多层循环来生成全排列

[m+n for m in 'ABC' for n in 'XYZ']

总之 列表生成式能够快速的生成满足条件的list

下面是一个让list中所有字符串变为小写的例子

[s.lower() for s in ['TIM','JOHN','MARY']

生成器:就是未循环完的列表,这是为了节约电脑内存,设立的一种一边循环一边计算的机制。

创建的方法也是很简单,其中一种就是把列表生成式的[]改成()就可以了

而调用的时候也一般不用麻烦的next()的方法,而是用for循环来遍历

比如:

g = (x*x for x in range(10))
for n in g:
  print(n)

运行结果:

0
1
4
9
16
25
36
49
64
81

这样就能遍历出所有的生成器中的元素

另一种生成器的方法:如果函数中包含有yield关键字,则这是一个生成器

def odd():
  print('step 1')
  yield 1
  print('step 2')
  yield(3)
  print('step 3')
  yield(5)

使用(遍历)方法:

g=odd()
for i in g:
  print(i)

运行结果:

step 1
1
step 2
3
step 3
5

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

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

Python 相关文章推荐
从零学python系列之浅谈pickle模块封装和拆封数据对象的方法
May 23 Python
Python中生成Epoch的方法
Apr 26 Python
Python 关于反射和类的特殊成员方法
Sep 14 Python
磁盘垃圾文件清理器python代码实现
Aug 24 Python
python如何为创建大量实例节省内存
Mar 20 Python
Python实现使用卷积提取图片轮廓功能示例
May 12 Python
Django框架使用mysql视图操作示例
May 15 Python
基于python2.7实现图形密码生成器的实例代码
Nov 05 Python
用python中的matplotlib绘制方程图像代码
Nov 21 Python
Django自带的加密算法及加密模块详解
Dec 03 Python
python生成任意频率正弦波方式
Feb 25 Python
如何通过python计算圆周率PI
Nov 11 Python
Python开发最牛逼的IDE——pycharm
Aug 01 #Python
django从请求到响应的过程深入讲解
Aug 01 #Python
python3.6的venv模块使用详解
Aug 01 #Python
从请求到响应过程中django都做了哪些处理
Aug 01 #Python
Python WSGI的深入理解
Aug 01 #Python
Django进阶之CSRF的解决
Aug 01 #Python
python3利用venv配置虚拟环境及过程中的小问题小结
Aug 01 #Python
You might like
Codeigniter生成Excel文档的简单方法
2014/06/12 PHP
PHP+Ajax实时自动检测是否联网的方法
2015/07/01 PHP
在WordPress中实现评论头像的自定义默认和延迟加载
2015/11/24 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
PHP读取文件,解决中文乱码UTF-8的方法分析
2020/01/22 PHP
jquery validate.js表单验证的基本用法入门
2010/05/13 Javascript
javascript测试题练习代码
2012/10/10 Javascript
基于JavaScript创建动态Dom
2015/12/08 Javascript
JQ选择器_选择同类元素的第N个子元素的实现方法
2016/09/08 Javascript
javascript创建对象的3种方法
2016/11/02 Javascript
jQuery学习笔记之入门
2016/12/14 Javascript
微信小程序 wx.uploadFile无法上传解决办法
2016/12/14 Javascript
Angular实现跨域(搜索框的下拉列表)
2017/02/16 Javascript
vue与TypeScript集成配置最简教程(推荐)
2017/10/17 Javascript
VueJs使用Amaze ui调整列表和内容页面
2017/11/30 Javascript
ng-alain表单使用方式详解
2018/07/10 Javascript
微信小程序搭建(mpvue+mpvue-weui+fly.js)的详细步骤
2018/09/18 Javascript
Windows下支持自动更新的Electron应用脚手架的方法
2018/12/24 Javascript
利用Angular7开发一个Radio组件的全过程
2019/07/11 Javascript
可用于监控 mysql Master Slave 状态的python代码
2013/02/10 Python
python在多玩图片上下载妹子图的实现代码
2013/08/13 Python
python实现上传下载文件功能
2020/11/19 Python
对Python 文件夹遍历和文件查找的实例讲解
2018/04/26 Python
python 中字典嵌套列表的方法
2018/07/03 Python
Python学习笔记之读取文件、OS模块、异常处理、with as语法示例
2019/06/04 Python
python-web根据元素属性进行定位的方法
2019/12/13 Python
CSS3五个技巧给你的网站带来出色的效果
2009/04/02 HTML / CSS
使用HTML5 Canvas绘制直线或折线等线条的方法讲解
2016/03/14 HTML / CSS
基于zepto的插件之移动端无缝向上滚动并上下触摸滑动实例代码
2016/12/20 HTML / CSS
美国学校用品、教室和教学商店:Discount School Supply
2018/04/04 全球购物
意大利折扣和优惠券网站:Groupalia
2019/10/09 全球购物
俄罗斯苹果优质经销商商店:iPort
2020/05/27 全球购物
幼儿园中班个人总结
2015/02/28 职场文书
企业文化学习心得体会
2016/01/21 职场文书
纯html+css实现奥运五环的示例代码
2021/08/02 HTML / CSS
搭建Yolov5服务器
2022/04/30 Servers