- 定义一个列表,在列表中保存6个学生的信息(学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明) )
students = [ {'name': '小王','age': 21, 'score':55,'tel': '1282571','gender':'男'}, {'name': '小宋', 'age': 18, 'score':70,'tel': '128788','gender':'男'}, {'name': '小孟', 'age': 23, 'score':46,'tel': '128994','gender':'男'}, {'name': '小李', 'age': 16, 'score':87,'tel': '128927','gender':'女'}, {'name': '小贺', 'age': 25, 'score':66,'tel': '128116','gender':'男'}, {'name': '小郭', 'age': 17, 'score':59,'tel': '128288','gender':'女'}, ]
1. 统计不及格学生的个数count = 0 for x in students: if x['score'] <60: count += 1 print('不及格学生的个数:',count)
2. 打印不及格学生的名字和对应的成绩for x in students: if x['score'] <60: print('不及格学生的名字:',x['name'],'成绩',x['score'])
3. 打印手机尾号是8的学生的名字for z in students: if int(z['tel']) % 10 == 8: print('手机尾号是8的学生的名字',z['name'])
4. 打印最高分和对应的学生的名字max_score=0 name='' for x in students: if int(x['成绩'])>int(max_score): max_score=x['成绩'] print(name,max_score)
5. 删除性别不明的所有学生 6. 将列表按学生成绩从大到小排序(挣扎一下,不行就放弃)for x in range(len(students)): i = 0 j = 1 while j<len(students): if students[i]['score'] < students[j]['score']: k = students[j] students[j] = students[i] students[i] = k i+=1 j+=1 print(students)
day8-字典和集合
最新推荐文章于 2022-04-04 22:16:52 发布