Python学习笔记——XlsxWriter实现Excle的简单操作

XlsxWriter简介

XlsxWriter是一个Python模块,可用于在Excel 2007+ XLSX文件中写入多个工作表的文本,数字,公式和超链接。它支持格式化等功能。可到官网了解更多详情,官网链接:https://xlsxwriter.readthedocs.io/

安装XlsxWriterd

pip install XlsxWriter

实例1:创建一个xlsx文件,并写入内容

import xlsxwriter

# 创建工作簿并添加工作表
workbook = xlsxwriter.Workbook('demo1.xlsx')
worksheet = workbook.add_worksheet()

# 写入数据到A1
worksheet.write('A1', 'Hello world')

# 关闭excel文件
workbook.close()

实例2:xlsx的的简单应用

假设我们有一些关于我们想要转换为Excel XLSX文件的月度支出的数据:

expenses = (
    ['Rent', 1000],
    ['Gas',   100],
    ['Food',  300],
    ['Gym',    50],
)

要做到这一点,我们可以从一个小程序开始,如下所示:

import xlsxwriter

# 创建工作簿并添加工作表。
workbook = xlsxwriter.Workbook('Expenses01.xlsx')  # 设置输出路径为当前目录下
worksheet = workbook.add_worksheet()

# 下面是我们想要写入工作表的一些数据。
expenses = (
    ['Rent', 1000],
    ['Gas',   100],
    ['Food',  300],
    ['Gym',    50],
)

# 从第一个单元格开始。行和列为零索引。
row = 0
col = 0

# 迭代数据并逐行写出。
for item, cost in (expenses):
    worksheet.write(row, col,     item)
    worksheet.write(row, col + 1, cost)
    row += 1

#  使用公式计算总和。
worksheet.write(row, 0, 'Total')
worksheet.write(row, 1, '=SUM(B1:B4)')

# 不要忘记关闭文件
workbook.close()

运行程序后,我们可以在刚刚设置的目录下找到‘Expenses01.xlsx’文件。
Expenses01.xlsx 打开后如下图所示:
在这里插入图片描述

实例3:向xlsx文件添加格式

在上一节中,我们使用Python和XlsxWriter模块创建了一个简单的电子表格。

这将所需的数据转换为Excel文件,但看起来有点光鲜。为了使信息更清晰,我们想添加一些简单的格式,如下所示:
在这里插入图片描述

重点观察注释部分即可,大部分代码与实例2相同,对比实例2与实例三的异同

 import xlsxwriter

 workbook = xlsxwriter.Workbook('Expenses02.xlsx')
 worksheet = workbook.add_worksheet()

 # 使用add_fromat方法设置单元格的格式
 bold = workbook.add_format({'bold': True})		# 添加粗体格式
 money = workbook.add_format({'num_format': '$#,##0'})		# 添加数字格式

# 在worksheet的write方法中的第三个参数写上刚刚设置的格式参数,即可为单元格填充格式
 worksheet.write('A1', 'Item', bold)	# 设置标题栏为粗体
 worksheet.write('B1', 'Cost', bold)

 expenses = (
     ['Rent', 1000],
     ['Gas',   100],
     ['Food',  300],
     ['Gym',    50],
 )

 row = 1
 col = 0

 for item, cost in (expenses):
     worksheet.write(row, col,     item)
     worksheet.write(row, col + 1, cost, money) # 设置数字格式
     row += 1

 worksheet.write(row, 0, 'Total',       bold)
 worksheet.write(row, 1, '=SUM(B2:B5)', money)

 workbook.close()

以上内容参考自XlsxWrite官网

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值