当前位置:   article > 正文

声明一个字典保存一个学生的信息,学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明)_声明一个字典保存一个学生信息实现detaframe

声明一个字典保存一个学生信息实现detaframe

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

dict1 = {'name':'a','age':18,'score':99,'nums':15264855565,'gender':'男'} 

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

  1. list1 = [
  2. {'name': '大一', 'age': 18, 'score': 99, 'tel': 15166555268, 'gender': '男'},
  3. {'name': '小二', 'age': 16, 'score': 80, 'tel': 16588922166, 'gender': '不明'},
  4. {'name': '张三', 'age': 22, 'score': 36, 'tel': 12454424266, 'gender': '女'},
  5. {'name': '李四', 'age': 23, 'score': 26, 'tel': 14255222458, 'gender': '不明'},
  6. {'name': '王五', 'age': 19, 'score': 95, 'tel': 16245542528, 'gender': '女'},
  7. {'name': '赵六', 'age': 15, 'score': 88, 'tel': 16154254258, 'gender': '男'}
  8. ]

(1) 统计不及格学生的个数

(2) 打印不及格学生的名字和对应的成绩

  1. t1 = 0
  2. for list2 in list1:
  3. # print(list2)
  4. # print(list2['score'])
  5. # print(list2['nums'])
  6. # print(list2['score'])
  7. if list2['score'] < 60: #统计不及格学生的信息
  8. t1 += 1
  9. print('不及格的学生名字和成绩',list2['name'],":",list2['score'])
  10. print('不及格的学生个数:',t1)

(3) 统计未成年学生的个数

  1. t3 = 0
  2. for list2 in list1:
  3. if list2['age'] < 18:
  4. t3 += 1
  5. print('未成年学生的人数',t3)
  6. # print(f'未成年人数:{t3}')

(4) 打印手机尾号是8的学生的名字

  1. for list2 in list1:
  2. if list2['tel']%10 == 8:
  3. # if list2['tel'][-1] == '8':#电话号码是字符串'13212345678'
  4. print('手机尾号是8的学生的名字:',list2['name'])
  5. # print(f"手机尾号是8得学生得名字:{list2['name']}")

(5) 打印最高分和对应的学生的名字

  1. max1 = 0
  2. for list2 in list1:
  3. if list2['score'] > max1:
  4. max1 = list2['score']
  5. name = list2['name']
  6. print(name)
  7. #法二
  8. num = {'name':''}
  9. max_score = list1[0]['score']
  10. for x in list1[1:]:
  11. if x['score'] > max_score:
  12. max_score = x['score']
  13. num['name'] = x['name']
  14. print('最高分的学生:',max_score,num['name'])

(6) 删除性别不明的所有学生

  1. #######1.6 法一
  2. for i in list1[:]:
  3. if i['gender'] == '不明':
  4. list1.remove(i)
  5. print(i)
  6. print(list1)
  7. #####1.6 法二
  8. i = 0
  9. while i <len(list1):
  10. if list1[i]['gender'] == '不明':
  11. list1.remove(list1[i])
  12. i -= 1
  13. i += 1
  14. print(list1)
  15. ######1.6 法三
  16. res = [x for x in list1 if x['gender'] != '不明']
  17. print(res)
  18. ######1.6 法四
  19. ## (5,-1,-1)
  20. for x in range(len(list1)-1,-1,-1): #543210
  21. if list1[x]['gender'] == '不明':
  22. list1.remove(list1[x])
  23. print(list1)

(7) 将列表按学生成绩从大到小排序

  1. for i in range(len(list1)):
  2. for j in range(len(list1)-1-i):
  3. if list1[j]['score'] <list1[j+1]['score']:
  4. list1[j],list1[j+1]= list1[j+1],list1[j]
  5. print(list1)
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/516501
推荐阅读
相关标签
  

闽ICP备14008679号