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 相关文章推荐
python控制台显示时钟的示例
Feb 24 Python
Python代码调试的几种方法总结
Apr 15 Python
举例讲解Python中装饰器的用法
Apr 27 Python
influx+grafana自定义python采集数据和一些坑的总结
Sep 17 Python
python使用Turtle库绘制动态钟表
Nov 19 Python
计算机二级python学习教程(3) python语言基本数据类型
May 16 Python
详解Python 定时框架 Apscheduler原理及安装过程
Jun 14 Python
python生成特定分布数的实例
Dec 05 Python
Python使用uuid库生成唯一标识ID
Feb 12 Python
通过代码实例了解Python异常本质
Sep 16 Python
Python基本数据类型之字符串str
Jul 21 Python
Python基本知识点总结
Apr 07 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
让这部DC动画新作刷新你的认知
2020/03/03 欧美动漫
快速配置PHPMyAdmin方法
2008/06/05 PHP
php 抽象类的简单应用
2011/09/06 PHP
ini_set的用法介绍
2014/01/07 PHP
phpStudy中升级MySQL版本到5.7.17的方法步骤
2017/08/03 PHP
php实现微信公众号创建自定义菜单功能的实例代码
2019/06/11 PHP
繁简字转换功能
2006/07/19 Javascript
javascript在事件监听方面的兼容性小结
2010/04/07 Javascript
jQuery EasyUI API 中文文档 - DataGrid数据表格
2011/11/17 Javascript
document.createElement()用法
2013/03/13 Javascript
JS实现两个大数(整数)相乘
2014/04/28 Javascript
jquery制作属于自己的select自定义样式
2015/11/23 Javascript
BootStrap中Tab页签切换实例代码
2016/05/30 Javascript
js判断输入字符串是否为空、空格、null的方法总结
2016/06/14 Javascript
详解webpack-dev-server的简单使用
2018/04/02 Javascript
优雅的使用javascript递归画一棵结构树示例代码
2019/09/22 Javascript
node.js中 redis 的安装和基本操作示例
2020/02/10 Javascript
原理深度解析Vue的响应式更新比React快
2020/04/04 Javascript
Python编程实现粒子群算法(PSO)详解
2017/11/13 Python
对Python3 * 和 ** 运算符详解
2019/02/16 Python
python脚本当作Linux中的服务启动实现方法
2019/06/28 Python
python使用Matplotlib改变坐标轴的默认位置
2019/10/18 Python
Python 爬虫实现增加播客访问量的方法实现
2019/10/31 Python
Python使用turtle库绘制小猪佩奇(实例代码)
2020/01/16 Python
澳大利亚在线家具、灯饰和家居装饰店:LivingStyles
2018/11/20 全球购物
DNA基因检测和分析:23andMe
2019/05/01 全球购物
保加利亚手表、香水、化妆品和珠宝购物网站:Brasty.bg
2020/04/22 全球购物
介绍一下SQL注入攻击的种类和防范手段
2012/02/18 面试题
2014党员自我评议表范文
2014/09/20 职场文书
企业党员个人自我评价
2014/09/20 职场文书
2014年家长学校工作总结
2014/11/20 职场文书
求职简历自我评价2015
2015/03/10 职场文书
接收函
2019/04/22 职场文书
Vue如何实现组件间通信
2021/05/15 Vue.js
科普 | 业余无线电知识-波段篇
2022/02/18 无线电
SQL SERVER中的流程控制语句
2022/05/25 SQL Server