day8作业

2019-01-04  本文已影响0人  星龙断月

使用一个变量all_students保存一个班的学生信息(4个),每个学生需要保存:姓名、年龄、成绩、电话

all_students = [
    {'name':'stu1', 'age': 19, 'score':81, 'tel':'192222'},
    {'name':'stu2', 'age': 29, 'score':90, 'tel':'211222'},
    {'name':'stu3', 'age': 12, 'score':67, 'tel':'521114'},
    {'name':'stu4', 'age': 30, 'score':45, 'tel':'900012'},
] 

1.添加学生:输入学生信息,将输入的学生的信息保存到all_students中

例如输入:
姓名: 小明
年龄: 20
成绩: 100
电话: 111922  
那么就在all_students中添加{'name':'小明', 'age': 20, 'score': 100, 'tel':'111922'}
all_students = [
    {'name': 'stu1', 'age': 19, 'score': 81, 'tel': '192222'},
    {'name': 'stu2', 'age': 29, 'score': 90, 'tel': '211222'},
    {'name': 'stu3', 'age': 12, 'score': 67, 'tel': '521114'},
    {'name': 'stu4', 'age': 30, 'score': 45, 'tel': '900012'},
]
new_student = {}
name = input('姓名:')
age = input('年龄:')
score = input('成绩:')
tel = input('电话:')
new_student.setdefault('name', name)
new_student.setdefault('age', age)
new_student.setdefault('score', score)
new_student.setdefault('tel', tel)
print(new_student)
all_students.append(new_student)
print(all_students)

2.按姓名查看学生信息:

例如输入:
姓名: stu1 就打印:'name':'stu1', 'age': 19, 'score':81, 'tel':'192222'
all_students = [
    {'name': 'stu1', 'age': 19, 'score': 81, 'tel': '192222'},
    {'name': 'stu2', 'age': 29, 'score': 90, 'tel': '211222'},
    {'name': 'stu3', 'age': 12, 'score': 67, 'tel': '521114'},
    {'name': 'stu4', 'age': 30, 'score': 45, 'tel': '900012'},
]
name = input('姓名:')
for dict in all_students:
     if name == dict['name']:
         print(dict)
         break
else:
    print('您所查找的学生不存在')

3.求所有学生的平均成绩和平均年龄

all_students = [
    {'name': 'stu1', 'age': 19, 'score': 81, 'tel': '192222'},
    {'name': 'stu2', 'age': 29, 'score': 90, 'tel': '211222'},
    {'name': 'stu3', 'age': 12, 'score': 67, 'tel': '521114'},
    {'name': 'stu4', 'age': 30, 'score': 45, 'tel': '900012'},
]
sum_score = 0
sum_age = 0
for dict in all_students:
    sum_score = dict['score'] + sum_score
    sum_age = dict['age'] + sum_age
    continue
print('所有学生的平均成绩是%.2f平均年龄是%.2f' % (sum_score/4, sum_age/4))

4.删除班级中年龄小于18岁的学生

all_students = [
    {'name': 'stu1', 'age': 19, 'score': 81, 'tel': '192222'},
    {'name': 'stu2', 'age': 29, 'score': 90, 'tel': '211222'},
    {'name': 'stu3', 'age': 12, 'score': 67, 'tel': '521114'},
    {'name': 'stu4', 'age': 30, 'score': 45, 'tel': '900012'},
]
for dict in all_students[:]:
    if dict['age'] < 18:
        all_students.remove(dict)
print(all_students)

5.统计班级中不及格的学生的人数

all_students = [
    {'name': 'stu1', 'age': 19, 'score': 81, 'tel': '192222'},
    {'name': 'stu2', 'age': 29, 'score': 90, 'tel': '211222'},
    {'name': 'stu3', 'age': 12, 'score': 67, 'tel': '521114'},
    {'name': 'stu4', 'age': 30, 'score': 45, 'tel': '900012'},
]


population = 0
for dict in all_students:
    if dict['score'] < 60:
        population += 1
print(population)

6.打印手机号最后一位是2的学生的姓名

all_students = [
    {'name': 'stu1', 'age': 19, 'score': 81, 'tel': '192222'},
    {'name': 'stu2', 'age': 29, 'score': 90, 'tel': '211222'},
    {'name': 'stu3', 'age': 12, 'score': 67, 'tel': '521114'},
    {'name': 'stu4', 'age': 30, 'score': 45, 'tel': '900012'},
]

for dict in all_students:
    if int(dict['tel']) % 10 == 2:
        print(dict['name'])

上一篇下一篇

猜你喜欢

热点阅读