day8作业

1.声明一个字典保存一个学生的信息,学生信息中包括: 姓名、年龄、成绩(单科)、电话


student = {'name': '张三','age': 18,'results': 90,'The_phone': 12345678991}
print(student)


2.声明一个列表,在列表中保存6个学生的信息(6个题1中的字典)

a.统计不及格学生的个数

b.打印不及格学生的名字和对应的成绩

c.统计未成年学生的个数

d.打印手机尾号是8的学生的名字

e.打印最高分和对应的学生的名字

f.将列表按学生成绩从大到小排序(挣扎一下,不行就放弃)

xx = [{'name': '张一','age': 15,'results': 50,'The_phone': 12345678991},
      {'name': '张二','age': 22,'results': 70,'The_phone': 12345678998},
      {'name': '张三','age': 17,'results': 93,'The_phone': 12345678993},
      {'name': '张四','age': 18,'results': 44,'The_phone': 12345678991},
      {'name': '张五','age': 11,'results': 54,'The_phone': 12345678998},
      {'name': '张八','age': 28,'results': 93,'The_phone': 12345678990}]

# a.统计不及格学生的个数


bu = 0
for i in xx:
    if i['results'] < 60:
        bu+=1
print('不及格的有:',bu,'个')

#     b.打印不及格学生的名字和对应的成绩

for i in xx:
    if i['results'] < 60: #如果小于成绩60  ,就打印他
        print(i['name'],i['results'],end='分      ')
print()
#c.统计未成年学生的个数
nn = 0
for i in xx:
    if i['age'] < 18:  #如果 小于18 就证明未成年
        nn += 1       #小于18就计算一个
print(nn,'个未成年')

#     d.打印手机尾号是8的学生的名字


for i in xx:
    if i['The_phone']%10 == 8:   #%10  取余数就是个位  再判断
        print(i['name'],end=',')

print()
#e.打印最高分和对应的学生的名字

zgf = 0      #声明变量存最高分

for i in xx:
    if i['results'] > zgf :#如果比最高分高
        zgf = i['results']  #就把他保存到最高分
for i in xx:
    if i['results'] == zgf:  #如果他的分数==最高分,这个人就是最高分
        print(i['name'],zgf,end=',')   #  如果有多个就打印多个

print()
#f.将列表按学生成绩从大到小排序(挣扎一下,不行就放弃)

xx1 = xx[:]
xing = []
zgf1 = 0

for i in range(len(xx1)):   #循环
    for i in xx1:
        if i['results'] > zgf1:  # 如果比最高分高
            zgf1 = i['results']  # 就把他保存到最高分
    for i in xx1:
        if i['results'] == zgf1:  # 如果他的分数==最高分,这个人就是最高分
            xing.append(i)       #如果是最高分就当他是第一个 加入新列表
            xx1.remove(i)         #加入完成 删除原来的最高分 的人
            zgf1 = 0   # !!!注意重要 加入最高分以后将 最高分清零,不然一直打印最高分
print(xing)




# for i in xx:
#     if i['results'] > zgf1 :#如果比最高分高
#         zgf1 = i['results']  #就把他保存到最高分
# for i1 in xx:
#     if i1['results'] == zgf1:#如果他的分数==最高分,这个人就是最高分
#         xing.append(i1)
#
# print(xing)


# 3.尝试实现学生管理系统的界面(见视频)

你可能感兴趣的:(day8作业)