python xlutils 用法演示

本文介绍xlutils模块在Python中的使用,该模块结合了xlrd和xlwt的功能,能够实现Excel表格的读取和写入操作。文章详细解释了如何通过xlutils.copy拷贝并修改Excel文件,包括单元格的读写,以及如何处理表格样式和保存格式的限制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# xlutils_demo.py
import xlrd
from xlutils.copy import copy


def copy_excel(target_file):
    """
    利用 xlutils.copy 拷贝一份 Excel.
    
    xlutils.copy 可以实现以下功能:
        1. 读取表格信息的功能
        2. 在表格中写入数据的功能
    相当于 xlrd 和 xlwt 的结合体.
    但请注意, xlrd 读取的 xlsx 具有完整的读取功能, 但保存为新表格文件时, 必须以 '.xls' 格
    式保存, 因为 xlwt 只支持 '.xls' 格式的保存.
    """
    # 首先用 xlrd 读取一张表格
    read_file = 'sample.xlsx'
    workbook = xlrd.open_workbook(read_file, formatting_info=False)
    """
    formatting_info 参数表示保留原数据的样式 (如原表格的标黄单元格, 加粗字体等信息的保留), 
    默认值为 False (不保留).
    另外, formatting_info=True 不保证能完美保留, 部分样式可能丢失. (个人遇到过的情况是新
    建 sheet 操作会导致原表格标黄的单元格的背景色丢失)
    """
    
    # 拷贝此表格
    new_book = copy(workbook)
    # 注: 此时的 new_book 不仅具有 xlwt 的功能, 还具有 xlrd 的功能, 也就是既可读又可写.
    
    # 先展示读的功能
    # new_book 读取 sheet 的操作和 xlrd.sheet_by_index 略有不同.
    sheet = workbook.get_sheet(0)
    # 更多请见 xlrd_demo.py.
    
    # 写的功能
    # 写一个单元格.
    sheet.write(0, 0, 'new abc')
    # 更多请见 xlwt_demo.py.
    
    new_output_path = 'result2.xls'
    new_book.save(new_output_path)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值