Python xlutils库修改Excel文件及保留格式的方法

白榆
白榆
发布时间:2026-10-11 | 2人浏览过
原创

本文介绍如何使用Python的xlutils库修改Excel文件。重点讲解通过xlrd打开工作簿时设置formatting_info=True,以及使用copy()方法复制工作簿,从而在写入新数据时保留原有的单元格格式。

xlutils库简介与安装

在Python中处理Excel数据时,xlutils是一个常用的库。它通常用于对Excel数据进行代码层面的处理。在使用该库之前,需要通过pip进行安装:

pip install xlutils

xlutils修改Excel的核心步骤

使用xlutils修改Excel文件时,需要遵循特定的操作顺序,否则可能会导致原有的单元格格式丢失。以下是完整的操作流程:

1. 导入必要的模块

首先,需要导入xlrd和xlutils.copy模块:

import xlrd
import xlutils.copy

2. 打开Excel工作簿

使用xlrd.open_workbook()打开目标Excel文件。这里有一个关键参数:formatting_info=True。如果不指定此参数,打开的工作簿将丢失原有的格式信息:

book = xlrd.open_workbook('test.xls', formatting_info=True)

3. 复制工作簿

调用xlutils.copy.copy()方法对打开的工作簿进行复制。这一步生成的新工作簿对象保留了原文件的格式:

wtbook = xlutils.copy.copy(book)

4. 获取工作表并写入数据

通过get_sheet()方法获取具体的工作表对象,然后使用write()方法进行数据写入。需要注意的是,write操作本身不会自动保留样式,因此必须基于之前复制的工作簿进行操作:

wtsheet = wtbook.get_sheet(0)
wtsheet.write(0, 0, 'Ok, changed!')

5. 保存修改后的文件

最后,调用save()方法保存修改后的工作簿:

wtbook.save('test.xls')

注意事项

  • 仅支持写操作:xlutils主要用于写入操作,无法直接复制格式。必须通过formatting_info=True和copy()方法来间接保留格式。
  • 样式丢失风险:如果在open_workbook时未指定formatting_info=True,或者在write操作中未指定样式,可能会导致原有样式丢失。
  • 直接调用copy:可以通过from xlutils.copy import copy直接调用copy方法,简化代码。

以上就是python中xlutils库用法浅析的详细内容,更多关于Python Excel处理技巧的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表