python 函数,字典,列表使用综合实例(经典)

现有一字典:

dict1 = {'01': [67, 88, 45], '02': [97, 68, 85], '03': [97, 98, 95], '04': [67, 68, 45], }

存放着学生的学号和成绩。成绩列表中的3个数据分别是学生的语文、数学、英语成绩。

要求:

1.编写函数,返回每门成绩均大于等于85的学生的学号。

dict1 = {'01': [67, 88, 45], '02': [97, 68, 85], '03': [97, 98, 95], '04': [67, 68, 45], }
def avg(dict, score):
    l=[]
    for k, v in dict.items():
        if (v[0] >= score and v[1] >= score and v[2] >= score):
              l.append(k)
    return l
print(avg(dict1, 85))

2.编写函数,返回每一个学号对应的平均分(sum 和 len)和 总分,结果保留两位小数。

def avg2(dict):
    l={}
    for k, v in dict.items():
        l[k] = [round((sum(v) / len(v)),2), round((sum(v)),2)]
    return l
print(avg2(dict1))

3.编写函数,返回按总分升序排列的学号列表

def avg3(dict):
    l={}
    s=[]
    for k, v in dict.items():
        l[round((sum(v)),2)] = k
    m=sorted(l)

    for v in m:
        s.append(l[v])
    return s
print(avg3(dict1))

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/4647.html

(7)
江山如画的头像江山如画管理团队
python 递归函数使用示例,求两个整数的最大公约数(欧几里得算法)
上一篇 2020年1月31日 下午7:55
巧用边框线实现立体按钮效果(纯CSS)
下一篇 2020年2月2日 下午5:20

99%的人还看了以下文章

  • createStatement参数详解,带参数与不带参数的区别

    Connection接口的createStatement方法,可用来创建向数据库发送SQL语句的对象,用于执行SQL语句。 常用代码: Statement stmt = con.createStatement(); Statement stmt = con.createStatement (int resultSetType,int resultSetCon…

    2018年10月23日
    10.4K0
  • 上机实战八:Java web编程综合案例

    建议学时:6 一、开发基于MVC模式的信息管理系统,如新闻发布系统,要求用户可查看、查询。管理员进入后台可对发布新闻(实现相应的增删查改)。 后台添加文章,建议使用UEditor! UEditor 是开源、免费的在线HTML编辑器,主要用于让用户在网站上获得所见即所得编辑效果。 UEditor兼容性很好,是网站站长开发的首选,官网地址:UEditor官网 包…

    2018年12月11日
    7.2K0
  • 最全的数据结构排序算法实现及比较

    冒泡排序 类似暴力破解,1 – n 个,每个都比较一次。完成排序 public void sort(int[] arr) { int len = arr.length; for (int i = 0; i < len; i++) { for (int j = i + 1; j < len – 1; j++) { if (arr[i] …

    2020年10月13日
    8.0K0
  • 程序设计基础(C语言)—教学设计、教案

    教学设计——程序设计基础 教学基本信息 课程名称 程序设计基础 性质 专业基础课 学分 3 学时 48 题目 数据类型 专业年级 软件工程专业一年级 教材 书名:C程序设计(第五版) 出版社:清华大学出版社    出版日期: 2017年8月 教学背景分析 一、学习内容分析: 本节课要介绍的知识点——数据类型比较简单,但都是概念。对于这些陌生的、枯燥的纯概念性…

    2020年4月10日
    14.6K0
  • String、StringBuffer、StringBuilder的区别?

    String在实例化之后,其内存空间的内容大小是不能够被修改的;而StringBuffer是一个线程安全的可变字符序列,在实例化之后可以动态的修改堆内存中的内容,所以内存长度和大小是可变的;StringBuilder实例化之后内存大小长度也是可变的,不同之处在于StringBuilder不是线程同步,因此操作起来必然比StringBuffer更加高效。

    2018年10月24日
    3.0K0
  • Cookie和Session的区别及工作原理

    本文详细分析了Cookie和Session的区别及工作原理,并对Cookie和Session安全性进行了对比。

    编程开发 2020年2月11日
    7.3K0

发表回复

登录后才能评论