运行环境:
Python3.6
,Windwos10 RS1
,Pycharm
参考书籍—《Python自动化运维--技术与最佳实践》
刘天斯著
前言
在系统运营方面,表格广泛用于业务质量、资源利用、安全扫描等报表,同时也是应用系统常见的文件到处格式,以便数据人员做进一步加工处理。
模块介绍
我们可以利用Python
操作Excel
的模块XlsxWriter
,可以操作多个工作表的文字、数字、公式、图表等。
XlsxWriter
模块具有的功能:
- 100%兼容
Excel
的*.xlsx
文件,支持Excel2003
,Excel2007
等版本(Excel2003
和Excel2007
的拓展名为*.xls
)- 支持所有
Excel
单元格数据格式- 单元格合并、批注、自动筛选、丰富多格式字符串等
- 支持工作表
JPG
、PNG
图像,自定义图标- 内存优化模式支持写入大文件
模块安装
因为自带pip
管理工具,所以可以直接使用pip
安装:
pip install XlsxWriter
# 目前最新版本为1.0.0,官网文档介绍支持Python2.5-3.5,但目前使用Python3.6未发生异常
另外的安装方式:
# easy_install 安装方法
easy_install XlsxWriter
# 源码安装方法(Linux系统中使用)
curl -O -L http://github.com/jmcnamara/XlsxWriter/archive/master.tar.gz
tar zxvf master.tar.gz
cd XlsxWriter-master/
sudo python setup.py install
模块基本操作
在下列的示例代码中,实现基本的英文、中文写入操作,数据计算,以及插入图片等操作。
# -*- coding: utf-8 -*-
# @Time : 2017/10/3 16:52
# @File : xlsxWriterTest.py
# @Software: PyCharm
import xlsxwriter
workbook = xlsxwriter.Workbook('Demo1.xlsx') # 创建一个名为‘Demo1.xlsx’的工作表
worksheet = workbook.add_worksheet() # 创建一个工作表对象
worksheet.set_column('A:A', 20) # 设定第一列(A)的宽度为20px
# bold = workbook.add_format({'blod': True})
worksheet.write('A1', 'Hello World!') # A1单元格写入‘Hello World!’
worksheet.write('A2', '你好,世界!') # A2单元格写入‘你好,世界!’
# 行列表示法的单元格下标以0作为起始值,如‘3,0’等价于‘A3’
worksheet.write(2, 0, 123) # 使用列行表示法写入数字‘123’
worksheet.write(3, 0, 456) # 使用列行表示法写入数字‘456’
worksheet.write(4, 0, '=SUM(A3:A4)') # 求A3:A4的和,并写入‘4,0’,即‘A5’
worksheet.insert_image('A5', 'XLSX.png') # 在A5单元格插入图片
workbook.close() # 关闭Excel文件
运行结果
在表格计算时,单元格除了写入指定数据以外,还可以插入公式,而公示的表达式和Excel
中定义f(x)
的方式一致。