给定一组学生的成绩:98,84,76,62,53,94,39(成绩可存放到列表中),完成以下功能:
1)实现对考试成绩进行等级划分:分数≥90,等级A+;80≤分数<90,等级B; 70≤分数<80,等级为C; 60≤分数<70,等级为D;分数<60,等级为E,并打印;
2)计算对应绩点(保留一位小数),绩点计算公式:分数/10-5,低于60分的,绩点为0,并打印
3)统计成绩合格的人数,并打印出来
1.1.2 代码示例scoreList = [98,84,76,62,53,94,39]
passNum=0
for score in scoreList:
point=round(score/10-5,1)
if score >= 90:
print('本次考试,成绩为:',score,'等级为:A,绩点为:',point)
elif score >= 80 and score < 90:
print('本次考试,成绩为:',score,'等级为:B,绩点为:',point)
elif score >= 70 and score < 80:
print('本次考试,成绩为:',score,'等级为:C,绩点为:',point)
elif score >= 60 and score < 70:
print('本次考试,成绩为:',score,'等级为:D,绩点为:',point)
else:
print('本次考试,成绩为:',score,'等级为:E,绩点为:0')
if score>=60:
passNum+=1
print("成绩合格人数为:"+str(passNum))
2 循环
3 多变量迭代遍历
3.1 列表遍历迭代
for i in list:
print(i)
3.2 字典遍历key
d = {'a': 1, 'b': 2, 'c': 3}
for key in d
print(key) #key
print('value:'+str(d[key])) #value
3.3 字典遍历keys
d = {'a': 1, 'b': 2, 'c': 3}
for key in d.keys():
print(key)
print('value:'+str(d[key])) #value
3.4 字典遍历values
d = {'a': 1, 'b': 2, 'c': 3}
for key in d.values():
print(key)
#结果为1 2 3
3.5 字典遍历键值对
d = {'a': 1, 'b': 2, 'c': 3}
for item in d.items():
print(item[0]) #获取key
print(item[1]) #获取value
d = {'a': 1, 'b': 2, 'c': 3}
for key,value in d.items(): #同时引用两个变量
print(key) #获取key
print(value) #获取value
3.6 练习:用字典创建成绩表
3.6.1 题目
按照如下成绩表,创建以姓名为key,成绩为value的字典,完成以下功能:
1)查询”Jim”的成绩,并打印,若查不到,则打印”no persion”
2)成绩表中增加人员成绩,其中姓名为”John”,对应成绩为“58”
3)打印所有人的成绩信息,格式为 姓名+“:+成绩”+具体成绩
4)统计分数在80(包含)到90(不包含)之间的人员信息,打印出数量以及人员成绩信息
(格式为“分数在80(包含)到90(不包含)之间的人员信息为:” 姓名+“:+成绩”+具体成绩 )
5)成绩低于60分(不包含60)的人员信息从字典中删除,并打印新的字典
3.6.2 代码dict = {"Marry":90, "Linda":85, "Susan":93, "Rose":72, "Tony":88, "Tom":79, "Bill":98}
#查询jim成绩,没有返回 no person
print(dict.get("Jim", "no person"))
#增加john成绩58
dict['John'] = 58
#打印姓名+成绩
for key, value in dict.items():
print("姓名为"+key+"成绩是"+str(value))
#查找成绩在[80, 90)的人
for value in dict.values():
if value >= 80 and value <90:
print("2姓名为"+key+"成绩是"+str(value))
#删除成绩小于60的
#################################################method1
list1 = []
for key in dict:
list1.append(key)
for value in list1:
if dict[value] <60:
del dict[value]
print(dict)
######################################################method2
list3=[]
list4=[]
for key,value in dict.items():
if value > 60:
list3.append(key)
list4.append(value)
dict2 =dict(zip(list3, list4))
print(dict2)
######################################################method3
newScoreDict={}
removeKeys=[]
for key,value in scoreDict.items():
#统计低于60分的姓名
if(value<60):
removeKeys.append(key)
for key,value in newScoreDict.items():
print(key + ":成绩为" + str(value))
for key in removeKeys:
del scoreDict[key]
print("成绩低于60分(不包含60)的人员删除后:",scoreDict)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)