運行環境:
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)
的方式一致。