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基于twisted实现简单的web服务器
Sep 29 Python
Django静态资源URL STATIC_ROOT的配置方法
Nov 08 Python
Python极简代码实现杨辉三角示例代码
Nov 15 Python
Anaconda下安装mysql-python的包实例
Jun 11 Python
Python基于sklearn库的分类算法简单应用示例
Jul 09 Python
python 读取文本文件的行数据,文件.splitlines()的方法
Jul 12 Python
详解Python list和numpy array的存储和读取方法
Nov 06 Python
opencv之为图像添加边界的方法示例
Dec 26 Python
Python面向对象实现方法总结
Aug 12 Python
通过代码实例了解Python异常本质
Sep 16 Python
pycharm2020.1.2永久破解激活教程,实测有效
Oct 29 Python
PyTorch中的torch.cat简单介绍
Mar 17 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
PHP实现提取一个图像文件并在浏览器上显示的代码
2012/10/06 PHP
PHP正则表达式 /i, /is, /s, /isU等介绍
2014/10/23 PHP
PHP生成唯一订单号
2015/07/05 PHP
10个超级有用的PHP代码片段果断收藏
2015/09/23 PHP
PHP下用Swoole实现Actor并发模型的方法
2019/06/12 PHP
JQuery 浮动导航栏实现代码
2009/08/27 Javascript
jquery使用淘宝接口跨域查询手机号码归属地实例
2013/11/28 Javascript
轻松创建nodejs服务器(8):非阻塞是如何实现的
2014/12/18 NodeJs
js代码实现无缝滚动(文字和图片)
2015/08/20 Javascript
js显示当前日期时间和星期几
2015/10/22 Javascript
如何通过js实现图片预览功能【附实例代码】
2016/03/30 Javascript
AngularJS 工作原理详解
2016/08/18 Javascript
浅谈jQuery中的$.extend方法来扩展JSON对象
2017/02/12 Javascript
JavaScript严格模式下关于this的几种指向详解
2017/07/12 Javascript
jQueryUI Sortable 应用Demo(分享)
2017/09/07 jQuery
vue实现的双向数据绑定操作示例
2018/12/04 Javascript
Fetch超时设置与终止请求详解
2019/05/18 Javascript
JS控制GIF图片的停止与显示
2019/10/24 Javascript
ES2020 新特性(种草)
2020/01/12 Javascript
解决谷歌搜索技术文章时打不开网页问题的python脚本
2013/02/10 Python
对python中array.sum(axis=?)的用法介绍
2018/06/28 Python
Python爬虫框架scrapy实现downloader_middleware设置proxy代理功能示例
2018/08/04 Python
Python最小二乘法矩阵
2019/01/02 Python
python读写Excel表格的实例代码(简单实用)
2019/12/19 Python
python 基于卡方值分箱算法的实现示例
2020/07/17 Python
使用Python实现音频双通道分离
2020/12/25 Python
美国著名的家居用品购物网站:Bed Bath & Beyond
2018/01/05 全球购物
阿迪达斯印尼官方网站:adidas印尼
2020/02/10 全球购物
The North Face意大利官网:服装、背包和鞋子
2020/06/17 全球购物
素质教育标语
2014/06/27 职场文书
安全生产一岗双责责任书
2014/07/28 职场文书
党的群众路线剖析材料
2014/10/09 职场文书
2015元旦标语横幅
2014/12/09 职场文书
导游词之广州陈家祠
2019/10/21 职场文书
css实现两栏布局,左侧固定宽,右侧自适应的多种方法
2021/08/07 HTML / CSS
windows11怎么查看wifi密码? win11查看wifi密码的技巧
2021/11/21 数码科技