excel文件的工作表拆分
前言
本文就简单介绍一下,如何将含有多个sheet表的excel文档–按照顺序–在指定目录下–将每个excel表保存成一个单独的文档;且新建的文档也会以工作表的名字来命名。
一、需要引入哪些库
代码如下:
from openpyxl import load_workbook
import pandas as pd
load_workbook:主要用来读取包含多个工作表的Excel文件
pd:创建一个新的DataFrame(用于表达二维数据)来存储数据
二、用户输入模块
代码如下:
print('请输入excel文档完整路径(例子:E:\BaiduNetdiskDownload\你好.xlsx):', end='')
excel_path = input()
print('打算在哪个目录下批量生成(例子:D:\dsest):', end='')
parent_directory = input()
第一块代码:按照提示的格式输入相应的excel文档。
第二块代码:输入要在哪个目录保存拆分的文件。
三、读取excel文档信息
代码如下:
# 读取包含多个工作表的Excel文件
wb = load_workbook(excel_path)
# 获取所有工作表的名字
sheet_names = wb.sheetnames
先是读取整个文档的信息,然后从中获取它的工作表的名字。下面会根据这个工作表的名字来做文章。
四、遍历保存工作表
这个的思路是:每遍历一个工作表,就会获取它的数据,然后生成新的excel文档保存它的数据,直至遍历完所有的工作表。
注意:以下代码都是在for循环结构下运行的。
1.获取并暂存工作表信息
代码如下:
i = 0
# 遍历所有工作表并将其保存为单独的Excel文件
for sheet in sheet_names:
i += 1
#获取工作表的数据
ws = wb[sheet]
data = ws.values
# 创建一个新的DataFrame来存储数据
df = pd.DataFrame(data)
这里是遍历工作表并获取它的信息。
pd.DataFrame(data)的用处是常用来存储二维数据(懂了吧)。
2.指定路径保存文档
代码如下:
# 将当前工作表保存为新的Excel文件
output_file_name = str(f"{i}-{sheet}.xlsx")
# 添加一个斜杠以确保路径正确
output_path = parent_directory + '/' + output_file_name
#保存文档
df.to_excel(output_path)
第一段代码:给新文档个名字
第二段代码:将用户输入的路径和名字组合起来。
第三段代码:根据第二段提供的信息,相应的生成文件。
总结
代码不多,很容易实现,小伙伴们快来试一下。
下篇我出个稍微复杂一点的,如何自动的去读取一个目录里的所有excel文档并合成一个文档。文章来源:https://www.toymoban.com/news/detail-752945.html
文章来源地址https://www.toymoban.com/news/detail-752945.html
到了这里,关于Python 自动化之修理excel文件(一)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!