文件score.xsl为数学成绩表,请完成以下操作:(1)采用异常判断方式,确保读入该CSV文件;(2)期末总分=平时成绩40%+期末成绩60%,求数学成绩的总评分;(3)最后,按照总评分降序排列后,保存到一个新的文档内,内容包括:学生姓名与总评分。
你题目的解答代码如下:
import csv
try:
with open(r"score.csv","r",newline="", encoding='utf-8') as fileObj:
li = list(csv.reader(fileObj))
except IOError:
print("无法读取score.csv")
else:
print(li)
res = []
for n,a,b in li[1:]:
res.append([n,float(a)*0.4+float(b)*0.6])
res.sort(key=lambda x: x[1], reverse=True)
print(res)
with open("newScore.csv","w",newline="", encoding='utf-8') as fileObj:
csv.writer(fileObj).writerow(['学生姓名','总评分'])
csv.writer(fileObj).writerows(res)
如有帮助,望采纳!谢谢!