实验目的:
1、了解扩展库 openpyxl 的安装与使用。
2、熟练运用字典结构解决实际问题。
实验内容:
假设某学校所有课程每学期允许多次考试,学生可随时参加考试,系统自动将每次成绩
添加到 Excel 文件(包含 3 列:姓名,课程,成绩)中,现期末要求统计所有学生每门课
程的最高成绩。
编写程序,模拟生成若干同学的成绩并写入 Excel 文件,其中学生姓名和课程名称均可重复,也就是允许出现同一门课程的多次成绩,最后统计所有学生每门课程的最高成绩,并写入新的 Excel 文件。
实验步骤:
1、在命令提示符环境使用 pip install openpyxl 命令安装扩展库 openpyxl。
2、编写代码。
下面展示一些 代码。

from random import choice, randint
from openpyxl import Workbook, load_workbook
#生成随机数据
def generateRandomInformation(filename):workbook = Workbook()worksheet = workbook.worksheets[0]worksheet.append(['姓名','课程','成绩'])#中文名字中的第一、第二、第三个first = '赵钱孙李'middle = '伟昀琛东'last = '坤艳志'subjects = ('语文','数学','英语')for i in range(200):name = choice(first)#按一定概率生成只有两个字的中文名字if randint(1,100)>50:name = name + choice(middle)name = name + choice(last)#依次生成姓名、课程名称和成绩worksheet.append([name, choice(subjects), randint(0, 100)])# 保存数据,生成 Excel 2007 格式的文件workbook.save(filename)def getResult(oldfile, newfile):# 用于存放结果数据的字典result = dict()# 打开原始数据workbook = load_workbook(oldfile)worksheet = workbook.worksheets[0]# 遍历原始数据for row in worksheet.rows:if row[0].value == '姓名':continue# 姓名,课程名称,本次成绩name, subject, grade = map(lambda cell: cell.value, row)# 获取当前姓名对应的课程名称和成绩信息# 如果 result 字典中不包含,则返回空字典t = result.get(name, {})# 获取当前学生当前课程的成绩,若不存在,返回 0f = t.get(subject, 0)# 只保留该学生该课程的最高成绩if grade > f:t[subject] = graderesult[name] = tworkbook1 = Workbook()worksheet1 = workbook1.worksheets[0]worksheet1.append(['姓名', '课程', '成绩'])# 将 result 字典中的结果数据写入 Excel 文件for name, t in result.items():print(name, t)for subject, grade in t.items():worksheet1.append([name, subject, grade])workbook1.save(newfile)
if __name__ == '__main__':oldfile = r'd:\test.xlsx'newfile = r'd:\result.xlsx'generateRandomInformation(oldfile)getResult(oldfile, newfile)

Python实验|Excel 文件成绩处理相关推荐

  1. excel文件成绩处理python代码_Python处理Excel文件实例代码

    因为工作需求,需要审核一部分query内容是否有效,query储存在Excel中,文本内容为页面的Title,而页面的URL以HyperLink的格式关联到每个Cell. 于是本能的想到用Python ...

  2. python更新excel内容_[原创]使用 Python 读写 Excel 文件(一)更新

    项目要求 如果说是 Office 办公软件使得 Windows 成为主流的操作系统,那么 Excel 就是使得微软硬起来的法宝! Word 和 PowerPoint 都有不相上下的对手,但 Excel ...

  3. python暴力破解excel_使用 Python 读写 Excel 文件(一)

    项目要求 如果说是 Office 办公软件使得 Windows 成为主流的操作系统,那么 Excel 就是使得微软硬起来的法宝! Word 和 PowerPoint 都有不相上下的对手,但 Excel ...

  4. Python操作Excel文件:插入一列数据

    问题描述:已有Excel文件,其中包含5列数据,要求在第3列前插入一列数据,保存为新文件. 参考代码: 运行结果: --------董付国老师Python系列教材-------- 1)<Pyth ...

  5. Python 操作Excel文件

    Python 操作Excel文件 文章目录 Python 操作Excel文件 1. 用到的三方库 2. 读excel文件 3. 写excel 文件 简单的总结 Excel 是我们在日常办公中可谓是无处 ...

  6. python打开excel文件画散点图_Python 写excel文件并插入散点图

    这两天做小实验,需要分析结果,当然需要些图表.实验的算例少说也有几十个,一个个导入excel,太烦了.幸好,本人是个程序员. google了下,python写excel文件的方法不少,最后我选定了xl ...

  7. python 读取excel文件 效率 时间 格式_python读取Excel文件中的时间数据

    在使用python读取Excel文件中的时间格式,碰到的时间格式转换问题: 读取这样的表格: 输出这样的数据结果: 然而这样的结果却不是我们想要的,我们需要的是这样的结果: 1.安装python官方库 ...

  8. python处理excel文件的模块_python处理Excel文件的几个模块

    在python中简单地处理excel文件,有几个相关的模块,各有千秋,本文将不定时收录. Python Excel网站收集了关于python处理excel文件的各种信息. [注意]使用python处理 ...

  9. 怎么用python处理excel文件-用python处理excel文件有多轻松?工作从未如此简单

    最近需要频繁读写 excel 文件,想通过程序对 excel 文件进行自动化处理,发现使用 python 的 openpyxl 库进行 excel 文件读写实在太方便了,结构清晰,操作简单.本文对 o ...

最新文章

  1. ubuntu 安装gcc 4.8.2
  2. 批次管理的质量跟踪案例分享_食品加工行业
  3. 在Apache Camel中使用Spring数据
  4. python爬取ajax动态内容肯德基门店,Python爬虫如何爬取KFC地址
  5. PTA-7-1 矩阵运算 (20分)(C语言)
  6. windows下开启 PHP扩展Redis
  7. word 分栏后转html,分栏怎么让两边一样 怎样让word文档分栏而顺序不变
  8. aspx怎么转成java,Asp.net 2.0 中.aspx请求,即如何生成响应的Html文件(原创)
  9. 用react native 做的一个推酷客户端
  10. 华为云NP考试题库_华为认证考试题库-HCNP
  11. c语言存储器模式,单片机C51存储器类型及存储模式
  12. 河面上的月亮倒影动画特效
  13. VSCode操作小技巧
  14. 现役大学生必看!干货满满!
  15. SpringCloud Netflix-Eureka使用
  16. 2019备考[嵌入式系统设计师]你准备好了吗?
  17. 使用frp端口映射实现内网穿透(SSH、HTTP服务)
  18. 计算机的分区原理,电脑真的需要分区吗?别被“常识”骗了
  19. EXCEL难题一网打尽 无意间看到的 转过来 自己看看
  20. MC9S12G128 led点亮 key按键

热门文章

  1. 数字签名、数字证书与CA
  2. 数字优惠券市场现状研究分析报告-
  3. XAMPP安装配置(最)详细教程图解
  4. 福光电子蓄电池测试仪软件,福光电子蓄电池容量测试仪IDCE-4815C系列——交直流两种供电方式...
  5. Java编写超市购物_Java实现超市购物程序设计
  6. 单目标跟踪小结(2):算法
  7. 引领趋势拥抱未来!修嗒嗒云脸惊艳亮相上海建博会,大放异彩!
  8. ClassCastException: $Proxy0 cannot be cast to (com......) 的解决办法
  9. 创建可启动 WinPE 介质
  10. 听春叔讲,情侣+智能如何开启酒店业新风口