首页 > 解决方案 > Read_Excel Pandas Sheet_Name = None 仅返回 1 张

问题描述

我有一个 36 张的 Excel 工作簿(不是我的错)。'works' 下面的代码读取文件,但只读取第一张纸。我连接并发送到 csv,结果只有“Sheet1”。想法?

import pandas as pd

Data = pd.read_excel(open("P://XXDrives//Folder_1//Folder_2//XX.xlsx", "rb"), sheet_name = None)

pd.concat([Data], axis=0, ignore_index=True)

Data.to_csv('C://Users//MyName//Desktop//test.csv')

标签: pythonpandas

解决方案


该代码只读取一张纸,因为您已指定sheet_name = None. 如果您希望它读取特定的工作表(比如说一个名为 - 'my_sheet_name' 的工作表),请使用sheet_name = 'my_sheet_name'

更新:如果要垂直附加所有 36 张纸。

import pandas as pd
output_df = pd.read_excel(open("P://XXDrives//Folder_1//Folder_2//XX.xlsx", "rb"), sheet_name = 'sheet_1') # Use 1st sheet to populate your output_df
sheets = ['sheet_2', 'sheet_3', 'sheet_4'] #include the names of all the sheets here except the first one.

for i in sheets:
     Data = pd.read_excel(open("P://XXDrives//Folder_1//Folder_2//XX.xlsx", "rb"), sheet_name = i)
     output_df = pd.concat([output_df, Data], axis=0, ignore_index=True)

output_df.to_csv('C://Users//MyName//Desktop//test.csv')

推荐阅读