下面通过一个实例来演示 filter() 函数的用法。比如说,定义一个 list 变量,里边放置若干学生的成绩信息(包括语文、数学和英语)。要求使用 filter() 函数筛选出偏科的学生名单。

如何认定学生是否偏科呢?符合如下其中一条的学生,将被视为偏科:
有 2 科成绩在 80 分以上,有一科在 60 分以下。
有 1 科成绩在 90 分以上,另外 2 科成绩都在 60 分以下。
有 1 科成绩在 90 分以上,但三科的平均分在 70 分以下。

scores = [ (“Emma”, 89 , 90 , 59),
(“Edith”, 99 , 49 , 59),
(“Sophia”, 99 , 60 , 20),
(“May”, 40 , 94 , 59),
(“Ashley”, 89 , 90 , 59),
(“Arny”, 89 , 90, 69),
(“Lucy”, 79 , 90 , 59 ),
(“Gloria”, 85 , 90 , 59),
(“Abby”, 89 , 91 , 90)]

def handle_filter(a):
s = sorted(a[1: ]) #对三科成绩进行排序
#有 2 科成绩在 80 分以上,并且有 1 科在 60 分以下的
if s[-2] > 80 and s[0] < 60 :
return True
#有 1 科成绩在 90 分以上,另外 2 科成绩都在 60 分以下
if s[-1] > 90 and s[1] < 60 :
return True
if s[-2] > 80 and sum(s)/len(s) < 60:
#有 1 科成绩在 90 分以上, 且 3 科的平均分在 70 分以下
return True
return False

newIter = list(filter(handle_filter, scores))
print(newIter)

http://c.biancheng.net/view/5774.html

filter() 函数的用法相关推荐

  1. matlab的filter函数,filter函数用法 matlab中filter函数的用法

    matlab中filter函数的用法如果你深爱的人此刻在你身边陪你,你怎么会有时间来看这些文字呢 离散系统的差分方程为 2y[k]-y[-1]-3y[k-2]=2x[k]-x[k-1] x[k]=(0 ...

  2. filter函数的用法_函数周期表丨筛选丨表丨CALCULATETABLE

    CALCULATETABLE函数 CALCULATETABLE函数属于"筛选"类函数,隶属于"表函数". 某种意义上来说,CALCULATETABLE函数其实就 ...

  3. filter函数的用法_JavaScript中forEach和filter的用法和原理

    JavaScript中有许多好用的数组方法,例如说forEach,filter...等等 那这些方法是都有什么用途呢?以及自己能否写一个方法出来替代呢? forEach方法 日常用法 ​ 我们拿到一组 ...

  4. filter函数的用法_这几个超牛函数,你的Excel里有没有?

    小伙伴们好啊,今天和大家分享几个Office 365中新函数的典型用法,有了这些新函数,让原本复杂的计算变得越来越简单.1.数据转置如下图所示,为了便于打印,要将A列中的姓名,转换为多行多列.D6单元 ...

  5. filter函数的用法_动态数组函数系列5| 筛选函数FILTER,单条件多条件动态筛选

    FILTER函数是筛选函数,就是在源数据中按照我们的条件筛选出我们想要的数据.除了常规的数据筛选,还可以进行多条件的"且"或者"或"的筛选. 下面我们来看看这个 ...

  6. es6 filter函数的用法_Python 函数式编程指北,不只是面向对象哦!超级详细!

    Python 函数式编程指北, 不只是面向对象哦 了解在Python中如何使用 lambda, map, filter 和 reduce 函数来转换数据结构 Photo by Markus Spisk ...

  7. Python函数式编程中map()、reduce()和filter()函数的用法

    Python中map().reduce()和filter()三个函数均是应用于序列的内置函数,分别对序列进行遍历.递归计算以及过滤操作.这三个内置函数在实际使用过程中常常和"行内函数&quo ...

  8. filter函数的用法

    filter函数是数组里的一个方法,它主要起到的是过滤作用,返回符合条件表达式的数组,代码如下: var arr = [1,2,3,45,65,87,456]var str = arr.filter( ...

  9. python中filter函数的用法

    描述 filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换. 该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为 ...

最新文章

  1. Linux Centos 上一些常用的命令
  2. OpenGL材质和光照(转)part1
  3. 简单总结一下.net获得虚拟目录几个基本操作
  4. SaaS加速器II 能力中心:互利互补 共享商业红利 1
  5. JQuery的无缝滚动
  6. JS编写一个函数,实现传入一个不定长度字符串,查找出重复次数前n名的字符并分别统计其次数
  7. Android 人脸识别进行实名验证demo
  8. 如何在data visualization 中update svg_如何操作小程序页面中data数据区中的数据
  9. Mysql 设置 max_user_connections
  10. I00008 百鸡问题
  11. 泰坦尼克号数据_案例三:泰坦尼克号乘客的幸存预测_使用文档_机器数据分析平台...
  12. 狄拉克函数和广义函数 | 线性泛函
  13. uva 1395 Silm Span 【MST-Kruskal】
  14. 图像直方图及其均衡化--opencv
  15. Python编写程序,实现对输入字符串的大小写字母翻转(即大写变小写、小写变大写)操作
  16. 光线追踪(RayTracing)算法
  17. 【程序员情商up】说话的智慧
  18. C#界面程序设计——04导入并修改word文件
  19. Selenium自动化测试框架—简单了解
  20. 功率谱密度的一个小理解

热门文章

  1. 几种简单的设计模式:单例模式、代理模式、观察者模式、工厂模式
  2. 目标检测-斜框IOU,nms计算
  3. java 随机数生成原理_Java随机数生成原理--转稿
  4. JetPack(一) JetPack入坑指南——不会吧不会吧,不会还有人不会用JetPack吧
  5. 学计算机的需不需要考研?看完就明白了
  6. 关于Oracle的impdp和expdp的使用
  7. 衡量员工体验:企业需要了解 5 大员工体验数据类型
  8. 利用原生Ajax技术实现WEB项目信息交互
  9. JAVA杂谈 —— 1.2 JS比较两个对象内容是否相同
  10. 2021中小企业税收筹划存在的问题,为什么要做税务筹划