pandas中ExcelFile与ExcelWriter类的读写操作详解

周末不加班
周末不加班
发布时间:2026-10-13| 3人浏览过
原创

本文详细介绍pandas库中ExcelFile和ExcelWriter两个核心类的用法。通过ExcelFile读取现有Excel文件的Sheet名称及数据,利用parse方法提取指定Sheet内容;通过ExcelWriter创建写入对象,结合to_excel方法将多个DataFrame写入不同Sheet,最后调用save保存文件。适用于需要批量处理或生成多Sheet Excel文件的场景。

简介

一、简介

在pandas库中,ExcelFile()和ExcelWriter()是处理Excel文件读写操作的高效工具类。它们特别适用于需要管理包含多个Sheet的Excel文件的场景,能够简化数据提取与写入的流程。本文将详细解析这两个类的具体使用方法。

ExcelFile类的使用

二、ExcelFile()

使用ExcelFile()类时,必须传入目标Excel文件的路径及文件名。以下代码展示了如何初始化该对象:


import pandas as pd
demo_excel = pd.ExcelFile(r'D:\demo.xlsx')

可以通过type()函数检查demo_excel对象的类型,确认其是否为ExcelFile实例。


type(demo_excel)

获取ExcelFile对象后,可以利用其内置方法查看文件的基本信息,例如Sheet列表。

1、sheet_names

调用sheet_names属性可以按顺序返回当前Excel文件中所有Sheet的名称列表。


print(demo_excel.sheet_names)

2、parse()

使用parse()方法并传入特定的Sheet名称,可以提取该Sheet对应的表格数据。以下示例展示了如何根据Sheet名获取数据:


table1 = demo_excel.parse(sheet_name=demo_excel.sheet_names[0])

table2 = demo_excel.parse(sheet_name=demo_excel.sheet_names[1])

table3 = demo_excel.parse(sheet_name=demo_excel.sheet_names[2])

print(table1)
print(table2)
print(table3)

ExcelWriter类的写入操作

三、ExcelWriter()

ExcelWriter()类用于将数据写入同一个Excel文件的不同Sheet中。首先,需要创建一个writer对象,主要参数为待写入的Excel文件路径及文件名:


writer = pd.ExcelWriter(r'D:\demo.xlsx')
print(type(writer))

基于已创建的writer对象,可以使用to_excel()方法将不同的DataFrame数据及其对应的Sheet名称写入该对象。在所有数据写入完成后,调用save()方法将内存中的数据持久化到实际的Excel文件中:


'''创建数据框1'''
df1 = pd.DataFrame({'V1':np.random.rand(100),
          'V2 ':np.random.rand(100),
          'V3':np.random.rand(100)})
df1.to_excel(writer,sheet_name='sheet1',index=False)

'''创建数据框2'''
df2 = pd.DataFrame({'V1':np.random.rand(100),
          'V2 ':np.random.rand(100),
          'V3':np.random.rand(100)})
df2.to_excel(writer,sheet_name='sheet2',index=False)

'''创建数据框3'''
df3 = pd.DataFrame({'V1':np.random.rand(100),
          'V2 ':np.random.rand(100),
          'V3':np.random.rand(100)})
df3.to_excel(writer,sheet_name='sheet3',index=False)

'''数据写出到excel文件中'''
writer.save()

执行上述操作后,之前指定的外部Excel文件中将成功存储写入的内容。

至此,关于pandas中ExcelWriter和ExcelFile类的实现方法介绍完毕。如需了解更多相关pandas ExcelWriter或ExcelFile的内容,可搜索本站历史文章或继续浏览后续相关文章。感谢大家的支持!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。