欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 名人名企 > 16.使用读写包操作Excel文件:XlsxWriter 包

16.使用读写包操作Excel文件:XlsxWriter 包

2025/3/15 11:29:29 来源:https://blog.csdn.net/weixin_74727170/article/details/146265300  浏览:    关键词:16.使用读写包操作Excel文件:XlsxWriter 包

一 XlsxWriter 的介绍

XlsxWriter 只能写入 Excel 文件。
OpenPyXL 和 XlsxWriter 的区别在笔记 15 。

二 如何使用 XlsxWriter

1.导包

 import datetime as dtimport xlsxwriterimport excel

2.实例化工作簿

book = xlsxwriter.Workbook("xlxswriter.xlsx")
book.close()

运行后会创建一个空白的 excel 文件。

3.添加工作表并为其命名

sheet = book.add_worksheet("Sheet1")

4.为工作表写入数据

使用A1表示法和单元格索引 (从0开始)写入各个单元格。
sheet.write("A1", "Hello 1")
sheet.write(1, 0, "Hello 2")

5.格式化:填充颜色、对齐、边框和字体

formatting = book.add_format({"font_color": "#FF0000","bg_color": "#FFFF00","bold": True, "align": "center","border": 1, "border_color": "#FF0000"})sheet.write("A3", "Hello 3", formatting)

    font_color": "#FF0000": 设置字体颜色为红色。

    bg_color": "#FFFF00": 设置单元格的背景颜色为黄色。

    bold": True: 将字体设置为粗体。

    align": "center": 将单元格内容水平居中对齐。

    border": 1: 为单元格添加边框,宽度为 1。

    border_color": "#FF0000": 设置边框颜色为红色。

    6.数字格式化(使用Excel的格式化字符串)

    number_format = book.add_format({"num_format": "0.00"})
    sheet.write("A4", 3.3333, number_format)

    book.add_format({...}): 用于定义单元格的显示样式。

    "num_format": "0.00": 设置单元格的数字格式为小数点后保留两位小数。这意味着无论数字的实际值是多少,它都将在 Excel 中显示为两位小数。

    sheet.write("A4", 3.3333, number_format): 这行代码在 Excel 工作表的单元格 A4 中写入数字 3.3333,并应用之前定义的 number_format 格式。

    7.日期格式化(使用Excel的格式化字符串)

    date_format = book.add_format({"num_format": "mm/dd/yy"})
    sheet.write("A5", dt.date(2016, 10, 13), date_format)

    8.在 Excel 工作表的单元格中设置公式

    必须使用以逗号分隔的英文公式名称。

    sheet.write("A6", "=SUM(A4, 2)")

    9.图片

    sheet.insert_image(0, 2, "images/python.png")

    10.二维列表(使用excel模块)

    data = [[None, "North", "South"],["Last Year", 2, 5],["This Year", 3, 6]]
    excel.write(sheet, data, "A10")

    11.图表

    sales_report_xlsxwriter.py
    https://pan.baidu.com/s/1Gg0ePtKHRK4-q-qBLptL_Q?pwd=hnk6 提取码: hnk6 
    chart = book.add_chart({"type": "column"})
    chart.set_title({"name": "Sales per Region"})
    chart.add_series({"name": "=Sheet1!A11","categories": "=Sheet1!B10:C10","values": "=Sheet1!B11:C11"})
    chart.add_series({"name": "=Sheet1!A12","categories": "=Sheet1!B10:C10","values": "=Sheet1!B12:C12"})
    chart.set_x_axis({"name": "Regions"})
    chart.set_y_axis({"name": "Sales"})
    sheet.insert_chart("A15", chart)

    chart = book.add_chart({"type": "column"})

    创建一个新的图表对象,并指定图表类型为柱状图(column)。

    chart.set_title({"name": "Sales per Region"})

    为图表设置标题,标题内容为 "Sales per Region"。

    chart.add_series({"name": "=Sheet1!A11", "categories": "=Sheet1!B10:C10", "values": "=Sheet1!B11:C11"})
    chart.add_series({"name": "=Sheet1!A12", "categories": "=Sheet1!B10:C10", "values": "=Sheet1!B12:C12"})

    向图表中添加数据系列。每个数据系列由一个名称、一个类别范围和一个值范围组成。

    "name": "=Sheet1!A11": 指定数据系列的名称,引用工作表 Sheet1 中的单元格 A11

    "categories": "=Sheet1!B10:C10": 指定数据系列的类别,引用工作表 Sheet1 中的单元格范围 B10:C10

    "values": "=Sheet1!B11:C11": 指定数据系列的值,引用工作表 Sheet1 中的单元格范围 B11:C11

    chart.set_x_axis({"name": "Regions"})
    chart.set_y_axis({"name": "Sales"})

    设置坐标轴标签。

    chart.set_x_axis({"name": "Regions"}): 设置 X 轴的标签为 "Regions"。

    chart.set_y_axis({"name": "Sales"}): 设置 Y 轴的标签为 "Sales"。

    sheet.insert_chart("A15", chart)

    将创建的图表插入到工作表的单元格 A15 中。

    12.关闭工作簿并在磁盘上创建文件

    book.close()

    13..xlsm 格式的文件处理

    版权声明:

    本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

    我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

    热搜词