简介
在日常工作中,处理 Excel 表格数据是一项常见的任务。Python 提供了丰富的库和工具,能够帮助我们高效地处理 Excel 数据。本篇博客将介绍如何使用 openpyxl
库来读取 Excel 表格并进行数据处理,同时展示一个实际案例,说明如何从 Excel 表格中提取数据并转换为 JSON 格式进行存储。
准备工作
在开始之前,确保你已经安装了 openpyxl
库。如果尚未安装,可以通过以下命令进行安装:
pip install openpyxl
读取 Excel 表格
首先,我们需要使用 openpyxl
库来读取 Excel 表格数据。下面是读取 Excel 表格的基本步骤:
- 获取表格的工作簿对象
- 得到表单(sheet)
- 获取单元格数据
- 获取单元格数据的值
# 代码示例
from openpyxl import load_workbook
import pathlib
# 获取excel的相对路径
cur_path = pathlib.Path(__file__).absolute()
excel_path = cur_path.parent / "B题附件1.xlsx"
# 获取工作簿对象
wb = load_workbook(excel_path)
# 获取表单——sheet
sheet = wb["选课情况"]
# 获取单元格数据
cell_value = sheet.cell(row=2, column=2).value
数据处理与转换
接下来,我们将介绍如何利用 Python 对 Excel 表格中的数据进行处理和转换。在本例中,我们将演示如何将 Excel 表格中的数据转换为 JSON 格式并进行存储。以下是代码示例:
# 代码示例
import json
# 获取表单中所有的数据 -- 转化为列表
datas = list(sheet.values)
# 取出标题
title = datas[0]
# 再一次获取后续的每一行数据,跟title压缩成字典
case_list = []
for case in datas[1:]:
case_dict = dict(zip(title, case))
case_list.append(case_dict)
# 存储学生的字典
students_dict = {}
# 遍历原始数据,按照选课情况将学生存储到相应的列表中
for student in case_list:
courses = [key for key, value in student.items() if key != '学生' and key != '行政班' and value == 1]
key = tuple(courses) # 以选课情况作为键
if key not in students_dict:
students_dict[key] = []
students_dict[key].append(student['学生'])
# 输出存储结果
print(students_dict)
# 将结果转化为 JSON 格式并存储到文件中
students_dict = {str(key): value for key, value in students_dict.items()}
with open('data.json', 'w', encoding='utf-8') as f:
json.dump(students_dict,f,ensure_ascii=False,indent=4)
总结
本文介绍了如何使用 Python 中的 openpyxl
库来处理 Excel 表格数据,并提供了一个实际案例,展示了从 Excel 表格中提取数据并转换为 JSON 格式的过程。希望本文能够帮助读者更好地利用 Python 处理 Excel 数据,提高工作效率。
结语
如果您有任何问题或意见,欢迎在评论区留言,我们会尽快回复您。谢谢阅读!
标签:case,实用技巧,表格,Python,Excel,students,dict,key From: https://blog.csdn.net/qq_43580271/article/details/139424407