我正在尝试从一个Excel文件中提取所有数据(数据从同一文件散布到不同的表中)到一个新的Excel文件中。>
import pandas as pd import glob as glob appended_data = [] f_list = glob.glob(r'C:\Users\Sarah\Desktop\test\ *.xlsx') for f in f_list: data = pd.read_excel(f, sheet_name= ('May', 'April')) appended_data.append(data) appended_data = pd.concat(appended_data) appended_data.to_excel(r'C:\Users\Sarah\Desktop\test\appended.xlsx')
如果我尝试下面的代码,问题出在工作表名称中:
data = pd.read_excel(f, sheet_name= [0,1,2,3])
我收到值错误:没有可串联的对象
该代码仅在我输入一张纸的名称时有效:
data = pd.read_excel(f, sheet_name="April")
但是当我尝试两张或更多张纸的名称时不起作用:
data = pd.read_excel(f, sheet_name= ('May', 'April'))
如何告诉代码遍历所有工作表?谢谢
我正在尝试从一个excel文件中提取所有数据(数据从同一文件散布到不同的表中)到一个新的excel文件中。
sheet_names = pd.ExcelFile(f).sheet_names
并通过生成器进行迭代
appended_data = pd.concat((pd.read_excel(f, sheet_name=s) for s in sheet_names))