下面我将为你详细讲解如何使用Python读写多个sheet文件。本实例教程主要使用pandas
库进行操作。
1. 导入pandas库
首先需要导入pandas
库:
import pandas as pd
2. 读取Excel文件
使用pd.read_excel()
函数来读取Excel文件,可以通过设置sheet_name
参数来指定需要读取的sheet,如果不设置该参数,则默认读取第一个sheet。
df = pd.read_excel('sample.xlsx', sheet_name='Sheet1')
以上代码将读取名为Sheet1
的sheet,并将其存储为DataFrame
格式的数据。
3. 读取多个sheet
如果需要读取多个sheet,可以使用pd.read_excel()
函数中的sheet_name
参数设置为一个列表,列表中包含多个sheet的名称。
sheets_to_load = ['Sheet1', 'Sheet2', 'Sheet3']
data = pd.read_excel('sample.xlsx', sheet_name=sheets_to_load)
以上代码将读取名为Sheet1
、Sheet2
和Sheet3
的三个sheet,并将它们存储在data
这个字典中。其中,字典的键值为sheet的名字,对应的值则为该sheet的数据。
4. 写入Excel文件
使用pd.ExcelWriter()
函数来创建一个写入Excel文件的对象,并使用to_excel()
函数将DataFrame
数据写入Excel文件中。
with pd.ExcelWriter('output.xlsx') as writer:
df1.to_excel(writer, sheet_name='Sheet1')
df2.to_excel(writer, sheet_name='Sheet2')
以上代码将在当前目录下创建一个名为output.xlsx
的Excel文件,并将df1
和df2
两个数据写入到两个不同的sheet中。
示例说明
以下是一个较完整的示例:
import pandas as pd
# 读取多个sheet
sheets_to_load = ['Sheet1', 'Sheet2', 'Sheet3']
data = pd.read_excel('sample.xlsx', sheet_name=sheets_to_load)
# 处理sheet数据
for sheet_name, sheet_data in data.items():
print('Sheet: {}\n{}'.format(sheet_name, sheet_data.head()))
# 写入多个sheet
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'X': [7, 8, 9], 'Y': [10, 11, 12]})
with pd.ExcelWriter('output.xlsx') as writer:
df1.to_excel(writer, sheet_name='Sheet1')
df2.to_excel(writer, sheet_name='Sheet2')
以上代码将从名为sample.xlsx
的Excel文件中读取名为Sheet1
、Sheet2
、Sheet3
的三个sheet,并将数据打印出来。然后在当前目录下创建一个名为output.xlsx
的Excel文件,并将df1
和df2
两个数据写入到两个不同的sheet中。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用Python读写多个sheet文件 - Python技术站