1.使用filter和lambda函数

filter(fun, seq)函数对seq里的每个元素执行fun(),并返回值为true的元素放在一个iterator里

例如在一个列表里找出所有奇数可以这样写:

a = [1,2,3,4,5,6,7,8]
print(list(filter(lambda x: x%2 , a)))
>>> ================================ RESTART ================================
>>>
[1, 3, 5, 7]

2.列表解析,效率比filter高,比for循环更是高两倍

[expr for iter_val in iterable]
[expr for iter_val in iterable if cond_expr]

第一种,首先迭代iterable里的所有内容,每一次迭代,都把iterable里相应的内容放到iter_val,再在表达式中应用该iter_val的内容,最后用表达式的计算值返回一个列表
第二种,则是满足条件的才执行迭代操作

上面求奇数同样可以这样写:

b = [val for val in a if val%2]
print(b)<pre name="code" class="python">>>> ================================ RESTART ================================
>>>
[1, 3, 5, 7]

if 后面可接条件表达式,不如元素长度,比如数字大小等

后记

大家如果觉得小编的代码有用,可以多多关注小编,
同时小编的公众号也开通了,大家可以关注下,后续进行粉丝回馈,大家一起学习python叭

打赏小编点这里哦

python 列表过滤方法 条件表达式相关推荐

  1. python关键字列表的表达式,python 列表推导和生成器表达式的使用

    序列 序列是指一组数据,按存放类型分为容器序列与扁平序列,按能否被修改分为不可变序列与可变序列. 容器序列与扁平序列 容器序列存放的是对象的引用,包括list.tuple.collections.de ...

  2. python list map成员排序_python的map关于Python列表排序方法reverse、sort、sorted详细说明...

    python语言中的列表排序方法有三个:reverse反转/倒序排序.sort正序排序.sorted可以获取排序后的列表.在更高级列表排序中,后两中方法还可以加入条件参数进行排序. reverse() ...

  3. Python 列表 insert() 方法

    描述 Python 列表 insert() 方法将指定对象插入到列表中的指定位置. 语法 insert() 方法语法: L.insert(index,obj) 参数 index -- 对象obj需要插 ...

  4. Python 列表 list() 方法

    描述 Python 列表 list() 方法用于将可迭代对象(字符串.列表.元祖.字典)转换为列表. 注:元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中,列表是放于方括号中. ...

  5. Python列表函数方法

    Python列表函数&方法 Python包含以下函数: 序号 函数 1 cmp(list1, list2) 比较两个列表的元素 2 len(list) 列表元素个数 3 max(list) 返 ...

  6. Python 列表 min() 方法

    描述 Python 列表 min() 方法返回列表元素中的最小值. 语法 min() 方法语法: min(L) 参数 L -- 要返回最小值的列表. 返回值 返回列表元素中的最小值. 实例 以下实例展 ...

  7. Python 列表 append() 方法

    描述 Python 列表 append() 方法用于在列表末尾追加新的对象. 语法 append() 方法语法: L.append(obj) 参数 obj -- 追加到列表末尾的对象. 返回值 该方法 ...

  8. python列表过滤的方法

    在python中,对列表这样的数据结构进行过滤,提取自己需要的元素,组成新的列表,是很常见的操作,这就要自然而然的用到列表过滤了,而常用的过滤当然就是循环后通过if进行,但是这样子,显然就是代码的开支 ...

  9. Python 列表推导 、生成器表达式与声明式编程

    1.****列表推导********* 用到函数的一个常见的操作是将其用于列表的所有项,并使用结果创建一个新的列表.例如: # coding=utf-8 ''' ****列表推导********* 用 ...

最新文章

  1. 论文翻译 | Mask-SLAM:基于语义分割掩模的鲁棒特征单目SLAM
  2. 027-日期和时间组件
  3. tableau暂时不支持m1芯片!期待未来!
  4. ida 反编译 linux bin,使用IDA pro逆向ARM M系核心的Bin固件
  5. 旷厂练习生 | 小白进阶之三个月发表一篇CVPR
  6. UNIX网络编程笔记(7):回射程序的UDP版本
  7. [css] 请你解释下什么是浮动和它的工作原理是什么?同时浮动会引起什么问题?
  8. iPhone 13凌晨发布,电池容量较iPhone 12最高有望提升20%(文末有福利)
  9. 【气动学】基于matlab气动力导弹姿态控制【含Matlab源码 969期】
  10. mysql数据库安装时的默认端口_数据库默认端口号
  11. win10 软路由_「保姆级」万晓博带你用软路由搭建家庭网络中心第1节-准备工作...
  12. Ubuntu设置双显示器
  13. 2012 年美国总统候选人政治献金 数据分析(numpy+pandas)
  14. 无法从服务器中获取信息吗,无法从服务器获取信息
  15. 常见的网站攻击以及如何防御自己的网站被恶意攻击
  16. 林轩田机器学习基石课程个人笔记-第六讲
  17. 记账之后的收支明细,如何以收支图表的形式呈现
  18. shell判断给定日期是否是周末or月末
  19. java 时区 不正确_Java中的时区不匹配
  20. 两分钟快速理解成本函数(cost function)

热门文章

  1. cactiEZ中文版10.1安装(附下载地址)
  2. 6810. 【2020.10.05提高组模拟】路哥
  3. 域控制器时代:ECU 的「消亡」与汽车「中央大脑」的重建
  4. ORA-20000: ORU-10027
  5. MARKS:路由器桥接
  6. 【oh-my-zsh】打造强大又美观的linux终端
  7. angular2代理不可用_如何使任何文件在Angular中公开可用
  8. 风林火山 GHOST XP SP3清爽纯净版V2011_01
  9. c语言中生日蛋糕图片大全,生日蛋糕的句子及生日蛋糕图片大全
  10. 网络设备自动备份工具 Oxidized 使用体验