办公自动化期末考试技巧(python处理Excel实战进阶篇day10(处理期末考试学科等级及偏科))
- 办公技巧
- 2023-08-22 11:39:13
- 0
实例10—快速处理期末考试成绩等级和偏科
模拟场景需求:
全国一盘 棋,贯彻双减工作要求,从三年级开始才进行期末考试,并且不能公布成绩,所以我们采取一致坚持的等级公布方式,ABCDE五个等级,还有简单检测学生是否存在语数偏科现象,当然可以通过Excel进行操作,这里主要是讲解python的第三方库openpyxl的实践问题。
1、用到的知识点:
Python的判断和循环,自定义函数,wb对象基本操作包括创建和保存,cell单元格的读取和写入等。
2、用到的文件:
期末考试成绩单,要求是xlsx扩展名的,非隐私数据
3、代码操作编写截图:
处理等级截图1
处理等级截图2
give your the code:
from openpyxl import Workbook,load_workbook# 等级函数,根据分数返回ABCDE级别def level(grade=0): grade = int(grade) if grade >= 90: ret = 'A' elif grade >= 80: ret = 'B' elif grade >= 70: ret = 'C' elif grade >= 60: ret = 'D' else: ret = 'E' return ret# 简单定义偏科函数def gap(a=0,b=0): var = abs(a-b) if var >= 30: ret = '严重偏科' elif var >= 20: ret = '偏科' elif var >= 10: ret = '稍微偏科' elif var >= 0: ret = '不偏科' return ret# 导入成绩表格wb = load_workbook('total.xlsx')ws = wb.active# 循环处理行for i in range(3,ws.max_row 1): chinese_level = level(ws.cell(i,3).value) # 判断语文等级 ws.cell(i,4).value = chinese_level # 以写返回值的方式写入语文等级 math_level = level(ws.cell(i,5).value) # 判断数学等级 ws.cell(i,6).value = math_level # 同样方式写入数学等级 ws.cell(i,7).value = f"=sum(C{i},E{i})" # 以写入好函数的方式写入总分 # 简单判断是否偏科 ws.cell(i,8).value = gap(ws.cell(i,3).value,ws.cell(i,5).value)wb.save('ok.xlsx')
全自动生成等级结果
今天的例子要活学活用,关键练基础,熟悉python的openpyxl处理表格的思路,愿一路学习一路有你,操作基础已经更新完毕,不懂可以参阅
本文由 京廊文化根据互联网搜索查询后整理发布,旨在分享有价值的内容,本站为非营利性网站,不参与任何商业性质行为,文章如有侵权请联系删除,部分文章如未署名作者来源请联系我们及时备注,感谢您的支持。
本文链接: /bangong/21373.html