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 打开后如下图所示:
Python学习笔记——XlsxWriter实现Excle的简单操作_第1张图片

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

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

这将所需的数据转换为Excel文件,但看起来有点光鲜。为了使信息更清晰,我们想添加一些简单的格式,如下所示:
Python学习笔记——XlsxWriter实现Excle的简单操作_第2张图片

重点观察注释部分即可,大部分代码与实例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官网。

你可能感兴趣的:(Python学习笔记,Python学习笔记)