用pandas将excel中一个工作薄中的多个工作表(sheet)拆分成单个文件并保存

在用pandas读取excel文件时,有时候遇到一个excel文件包含了好几个样本的sheet,而这些sheet需要单独保存。sheet少的话可以打开excel新建一个新的excel文件然后复制sheet过去单独保存,但如果有几十个就比较麻烦。可以用pandas来3行代码搞定。

import pandas as pd
# 读取excel 文件中所有sheet
test_2=pd.read_excel("folder/yourfile.xlsx",sheet_name=None)

这种读取是以字典的形式读取的。字典的key就是excel中每个sheet的命名,test_2[key]内容就是你的表格。我们只需要把这表格输出以.csv保存。

# 每个sheet分别保存为独立的csv,注意要用utf-8-sig格式
for key in test_2:
     exec("test_2[key].to_csv(\"{}.csv\",index=False,encoding=\'utf-8-sig\')".format(key))

这儿要注意用utf-8-sig格式保存,不然会出现乱码。

猜你喜欢

转载自blog.csdn.net/weixin_44022515/article/details/108709445