帮我写一个python程序,有一个学生信息表students(如下所示), 要求: (1)统计不及格学生的个数 (2)打印不及格学生的名字和对应的成绩 (3)统计未成年学生的个数 (4)打印手机尾号是8的学生的名字 (5) 打印最高分和对应学生的名字 (6)删除性别不明的所有的学生 (7)将列表按照学生成绩从大到小排序 students = [ {'name':'张三','age':18,'score':98,'tel':'18888888888','gender':'female'}, {'name':'李四','age':20,'score':95,'tel':'18888888889','gender':'unkown'}, {'name':'王五','age':18,'score':88,'tel':'18888888810','gender':'male'}, {'name':'托尼','age':16,'score':58,'tel':'18888888811','gender':'unkown'}, {'name':'李磊','age':19,'score':78,'tel':'18888888812','gender':'male'}, {'name':'丽丽','age':17,'score':92,'tel':'18888888813','gender':'male'}, ]
时间: 2023-06-08 08:04:06 浏览: 168
用Python编程实现学生成绩管理,能按学期、按班级对学生成绩进行录入、修改、统计、查询和输出
你好!以下是对你的问题的回答:
(1) 统计不及格学生的个数:
```
count = 0
for stu in students:
if stu['score'] < 60:
count += 1
print("不及格学生的个数为:", count)
```
(2) 打印不及格学生的名字和对应的成绩:
```
print("不及格学生的名字和对应的成绩为:")
for stu in students:
if stu['score'] < 60:
print(stu['name'], ":", stu['score'])
```
(3) 统计未成年学生的个数:
```
count = 0
for stu in students:
if stu['age'] < 18:
count += 1
print("未成年学生的个数为:", count)
```
(4) 打印手机尾号是8的学生的名字:
```
print("手机尾号是8的学生的名字为:")
for stu in students:
if stu['tel'][-1] == '8':
print(stu['name'])
```
(5) 打印最高分和对应学生的名字:
```
max_score = students[0]['score']
max_name = students[0]['name']
for stu in students:
if stu['score'] > max_score:
max_score = stu['score']
max_name = stu['name']
print("最高分为:", max_score)
print("对应学生的名字为:", max_name)
```
(6) 删除性别不明的所有的学生:
```
new_students = []
for stu in students:
if stu['gender'] != 'unkown':
new_students.append(stu)
students = new_students
print("删除性别不明的所有学生后的新列表为:", students)
```
(7) 将列表按照学生成绩从大到小排序:
```
students.sort(key=lambda x:x['score'], reverse=True)
print("按学生成绩从大到小排序后的列表为:", students)
```
阅读全文