用 Pandas 单独导出 Excel 工作簿中的每个工作表

2021-12-22  本文已影响0人  辣辣不乖

想使用 Python Pandas 库将每个工作表导出到 CSV / TXT,需要使用 for 循环搞定 Seets 工作表标签页

一段错误的代码

import pandas as pd

df = pd.DataFrame() 
myfile = 'bankN.xlsx’ 
xl = pd.ExcelFile(myfile)

for sheet in xl.sheet_names: 
     df_tmp = xl.parse(sheet) 
     print(df_tmp)
     df = df.append(df_tmp, ignore_index=True,sort=False) 
     csvfile = f'{sheet_name}.csv' 
     df.to_csv(csvfile, index=False)

执行代码只生成一个包含所有 Seets 工作表数据的 CSV 文件

一段正确的代码

import pandas as pd

# 带参数原型
# pd.read_excel('bankN.xlsx', sheet_name=[i], index_col=None, header=False)

dfs = pd.read_excel('bankN.xlsx', sheet_name=None)

# 带参数原型
# dfs.to_csv(outputpath,sep='\t',index=False)
for sheet_name, data in dfs.items():
    # data.to_csv(f"{sheet_name}.txt",sep=' ',index=False) 导出到 TXT
    data.to_csv(f"{sheet_name}.csv")

正确的按工作表名单独另存文件

上一篇下一篇

猜你喜欢

热点阅读