
1,如何在列表,字典,集合中根据条件筛选值
发布日期:2021-05-18 11:08:35
浏览次数:18
分类:精选文章
本文共 951 字,大约阅读时间需要 3 分钟。
列表数据筛选
在实际编程中,筛选列表数据是非常常见的操作。以下是几种常用方法及其比较分析:
1. 使用 for
循环
这种方法简单直接,适用于较小的数据量。
- 优点:易于理解,逻辑简单。
- 缺点:对于较长列表,循环速度较慢。
data = [1, 2, -8, -2, 6, -9, 42, 36]res = []for i in data: if i > 0: res.append(i)
2. 使用 filter
过滤函数
filter
函数提供了更加简洁的代码 sintax。
- 优点:代码简洁,运行速度较快。
- 缺点:没有显式的列表推导式,某些场景下不够直观。
from random import randintdata = [randint(-10, 10) for _ in range(10)]res = list(filter(lambda x: x > 0, data))
3. 使用 列表推导式 + if
判断
结合列表推导式和条件判断,可以实现更紧凑的代码表达。
- 优点:代码简洁,运行速度较快。
- 缺点:对于复杂逻辑条件,可能需要额外的代码解释。
from random import randintdata = [randint(-10, 10) for _ in range(10)]res = [i for i in data if i > 0]
字典数据筛选
对于字典数据,通常使用字典推导式结合条件判断。
from random import randintdata = {x: randint(60, 100) for x in range(21)}res = {k: v for k, v in data.items() if v > 90}
集合数据筛选
对于集合数据,可以通过条件判断筛选出符合条件的元素。
from random import randintdata = set([randint(-1, 10) for _ in range(10)])res = {i for i in data if i % 3 == 0}
上述代码示例从简单到复杂,灵活满足不同的需求场景。选择哪种方法取决于具体的应用场景和数据规模。
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2025年04月28日 16时42分58秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
遇到问题之-yum update无法连接镜像问题解决
2019-03-15
遇到问题之-httpd服务启动报错182行错误
2019-03-15
pycharm如何设置(错误、警告类的标准提醒)
2019-03-15
PHP是世界上最好的语言?Phython第一个不服
2019-03-15
Bugku CTF-web6
2019-03-15
Bugku CTF-web10 头等舱
2019-03-15
UML-配置图
2019-03-15
JS高级面向对象(二)-构造函数和原型
2019-03-15
python入门到秃顶(10):异常
2019-03-15
ES6_变量生明
2019-03-15
考研复试英语问答
2019-03-15
百度背景换肤案例
2019-03-15
修改ng-zorro中table对齐及宽度等细节
2019-03-15
输出对象的值——踩坑
2019-03-15
angular2项目里使用排他思想
2019-03-15
折线图上放面积并隐藏XY轴的线
2019-03-15
failed to push some refs to git
2019-03-15
在苹果Mac上如何更改AirDrop名称?
2019-03-15
1110 Complete Binary Tree (25 point(s))
2019-03-15