Python学习小技巧之列表项的推导式与过滤操作


Posted in Python onMay 20, 2017

本文介绍的是关于Python中列表项的推导式与过滤操作的相关内容,分享出来供大家参考学习,下面来一起看看吧:

典型代码1:

data_list = [1, 2, 3, 4, 0, -1, -2, 6, 8, -9] 
data_list_copy = [item for item in data_list] 
 
print(data_list) 
print(data_list_copy)

输出1:

[1, 2, 3, 4, 0, -1, -2, 6, 8, -9] 
[1, 2, 3, 4, 0, -1, -2, 6, 8, -9]

典型代码2:

data_list = [1, 2, 3, 4, 0, -1, -2, 6, 8, -9] 
data_list_copy = [item for item in data_list if item > 0] 
 
print(data_list) 
print(data_list_copy)

输出2:

[1, 2, 3, 4, 0, -1, -2, 6, 8, -9] 
[1, 2, 3, 4, 6, 8]

应用场景

需要保持原列表不被改动,需要拷贝一份新的列表数据;只拷贝原列表中复合条件的数据项。

带来的好处

拷贝和过滤操作集中到了一行中,减少了代码的缩进级别,使代码更加紧凑,更易读

其它说明

1. 原始的数据源可以不是列表类型,也可以是元组、生成器等任何可迭代类型

2. 内置的filter函数也可以达到类似的效果

3. itertools模块中的ifilter和ifilterfalse的方法也可以达到类似的效果

4. 如果列表数据量巨大,需要慎重使用,注意内存消耗

总结

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
详解C++编程中一元运算符的重载
Jan 19 Python
Python实现删除文件中含“指定内容”的行示例
Jun 09 Python
python自动截取需要区域,进行图像识别的方法
May 17 Python
实例讲解python中的协程
Oct 08 Python
Python中shapefile转换geojson的示例
Jan 03 Python
Django ImageFiled上传照片并显示的方法
Jul 28 Python
Python实现时间序列可视化的方法
Aug 06 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
Dec 10 Python
pycharm 激活码及使用方式的详细教程
May 12 Python
Python 多线程C段扫描、检测 Ping扫描脚本的实现
Sep 03 Python
Python实现简单的猜单词
Jun 15 Python
python面向对象版学生信息管理系统
Jun 24 Python
Python yield 使用方法浅析
May 20 #Python
Python学习小技巧之列表项的拼接
May 20 #Python
Django验证码的生成与使用示例
May 20 #Python
Linux RedHat下安装Python2.7开发环境
May 20 #Python
深入理解Python中的内置常量
May 20 #Python
python万年历实现代码 含运行结果
May 20 #Python
关于pip的安装,更新,卸载模块以及使用方法(详解)
May 19 #Python
You might like
图片存储与浏览一例(Linux+Apache+PHP+MySQL)
2006/10/09 PHP
PHP中应该避免使用同名变量(拆分临时变量)
2015/04/03 PHP
php简单处理XML数据的方法示例
2017/05/19 PHP
javascript new 需不需要继续使用
2009/07/02 Javascript
淘宝搜索框效果实现分析
2011/03/05 Javascript
jquery随意添加移除html的实现代码
2011/06/21 Javascript
jquery自定义属性(类型/属性值)
2013/05/21 Javascript
jQuery之选择组件的深入解析
2013/06/19 Javascript
构造函数+原型模式构造js自定义对象(最通用)
2014/05/12 Javascript
js中将String转换为number以便比较
2014/07/08 Javascript
js实现数组冒泡排序、快速排序原理
2016/03/08 Javascript
Easyui Treegrid改变默认图标的方法
2016/04/29 Javascript
JQuery 动态生成Table表格实例代码
2016/12/02 Javascript
bootstrap timepicker在angular中取值并转化为时间戳
2017/06/13 Javascript
Express + Node.js实现登录拦截器的实例代码
2017/07/01 Javascript
Angular浏览器插件Batarang介绍及使用
2018/02/07 Javascript
[02:03]《现实生活中的DOTA2》—林书豪&DOTA2职业选手出演短片
2015/08/18 DOTA
[43:32]Winstrike vs VGJ.S 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
Python中的字典遍历备忘
2015/01/17 Python
浅析Python中将单词首字母大写的capitalize()方法
2015/05/18 Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
2016/01/31 Python
Python_LDA实现方法详解
2017/10/25 Python
Python实现OpenCV的安装与使用示例
2018/03/30 Python
Windows下PyCharm安装图文教程
2018/08/27 Python
Python3实现mysql连接和数据框的形成(实例代码)
2020/01/17 Python
python 使用while循环输出*组成的菱形实例
2020/04/12 Python
基于python3.7利用Motor来异步读写Mongodb提高效率(推荐)
2020/04/29 Python
Python钉钉报警及Zabbix集成钉钉报警的示例代码
2020/08/17 Python
Bluebella法国官网:英国性感内衣品牌
2019/05/03 全球购物
什么样的创业计划书可行性高?
2014/02/01 职场文书
三年级小学生评语
2014/04/22 职场文书
咖啡店创业计划书
2014/08/15 职场文书
大学生党员个人总结
2015/02/13 职场文书
学术会议通知范文
2015/04/15 职场文书
离婚起诉书范文2015
2015/05/19 职场文书
Mysql数据库group by原理详解
2022/07/07 MySQL