Python学习小技巧之列表项的推导式与过滤操作
2017-05-20 15:40
1001 查看
本文介绍的是关于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小技巧 2:列表项的推导式和过滤操作
- Python学习小技巧之列表项的拼接
- python个人学习小技巧 数据库Mssql 操作
- Python学习小技巧之列表项的排序
- Dive Into Python 学习记录3-getattr 介绍/过滤列表/and or/lambda 函数
- MongoDB 学习笔记(python操作)
- Python学习笔记八:字符串的操作(二)
- 学习Python操作Excel文件(1)
- Python日期操作学习笔记
- python 学习记录(3)—文件操作
- python学习之时间处理---强悍的时间操作大整合
- python操作数据库学习,自封装一个类来处理
- 5.python的路径相关操作——《深入python3》学习
- Python学习系列之异常和文件操作
- 5.python的路径相关操作——《深入python3》学习
- python学习笔记——通用序列操作
- Boost.Python 学习笔记 No.2——python操作c++对象
- Python学习笔记十(pymssql数据库操作)
- Python学习笔记二(String字符串操作)
- Python学习---日期操作