Python自動化運維筆記(七):XlsxWriter模塊實現Excel操作(上)

運行環境:Python3.6Windwos10 RS1Pycharm
參考書籍—《Python自動化運維--技術與最佳實踐》劉天斯著


前言

在系統運營方面,表格廣泛用於業務質量、資源利用、安全掃描等報表,同時也是應用系統常見的文件到處格式,以便數據人員做進一步加工處理。


模塊介紹

我們可以利用Python操作Excel的模塊XlsxWriter,可以操作多個工作表的文字、數字、公式、圖表等。

XlsxWriter模塊具有的功能:

  • 100%兼容Excel*.xlsx文件,支持Excel2003Excel2007等版本(Excel2003Excel2007的拓展名爲*.xls)
  • 支持所有Excel單元格數據格式
  • 單元格合併、批註、自動篩選、豐富多格式字符串等
  • 支持工作表JPGPNG圖像,自定義圖標
  • 內存優化模式支持寫入大文件

模塊安裝

因爲自帶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)的方式一致。


發佈了49 篇原創文章 · 獲贊 84 · 訪問量 30萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章