[英]Read each excel sheet as a different dataframe in Python
I have an excel file with 40 sheet_names.我有一个包含 40 个 sheet_names 的 excel 文件。 I want to read each sheet to a different dataframe, so I can export an xlsx file for each sheet.我想将每张纸读入不同的 dataframe,因此我可以为每张纸导出一个 xlsx 文件。 Instead of writing all the sheet names one by one, I want to create a loop that will get all sheet names and add them as a variable in the "sheet_name" option of "pandas_read_excel"我不想一个一个地写下所有工作表名称,而是创建一个循环来获取所有工作表名称并将它们作为变量添加到“pandas_read_excel”的“sheet_name”选项中
I am trying to avoid this:我试图避免这种情况:
df1 = pd.read_excel(r'C:\Users\filename.xlsx', sheet_name= 'Sheet1'); df2 = pd.read_excel(r'C:\Users\filename.xlsx', sheet_name= 'Sheet2');.... df40 = pd.read_excel(r'C:\Users\filename.xlsx', sheet_name= 'Sheet40');
thank you all guys谢谢大家
Specifying sheet_name
as None
with read_excel reads all worksheets and returns a dict
of DataFrames
.使用read_excel将sheet_name
指定为None
会读取所有工作表并返回DataFrames
的dict
。
import pandas as pd file = 'C:\Users\filename.xlsx' xl = pd.read_excel(file, sheet_name=None) sheets = xl.keys() for sheet in sheets: xl[sheet].to_excel(f"{sheet}.xlsx")
I think this is what you are looking for.我想这就是你要找的。
import pandas as pd xlsx = pd.read_excel('file.xlsx', sheet_name=None, header=None) for sheet in xlsx.keys(): xlsx[sheet].to_excel(sheet+'.xlsx', header=False, index=False)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.