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

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


XlsxWriter模塊中常用方法


Workbook類

Workbook類定義:Workbook(filename[,options])
該類可以實現創建一個XlsxWriterWorbook對象。Workbook類表示整個電子表格文件。

  • 參數filenameString類型)爲創建的Excel文件存儲路徑;
  • 參數optionsDict類型)爲可選的Workbook參數,作爲初始化表格內容;
    • 例如:{'strings_to_numbers' : True}表示使用worksheet.write()方法時激活字符串轉換數字。

add_Worksheet([sheetname])方法

添加一個新的工作表,參數sheetname(String類型)爲可選參數,默認爲sheet1;比如說按照表單順序該工作表爲第五張,則默認名爲sheet5

# -*- coding: utf-8 -*-

import xlsxwriter

workbook = xlsxwriter.Workbook('Demo2.xlsx')    # 創建一個名爲Dome2.xlsx的表格
worksheet1 = workbook.add_worksheet()           # 添加第一個表單,默認爲sheet1
worksheet2 = workbook.add_worksheet('Files')    # 添加一個名爲File的表單
worksheet3 = workbook.add_worksheet()           # 添加一個表單,默認爲sheet3
workbook.close()

表格

add_format([properties])方法

在工作表中創建一個新的格式對象來格式化單元格。參數propertiesDict類型)爲指定一個格式屬性的字典。

bold = workbook.add_format()
bold.set_bold()                 # 設置爲加粗

add_chart(options)方法

在工作表中創建一個圖表對象,內部通過insert_chart()方法來實現,參數options(dict類型)爲圖標指定一個字典屬性。

chart = workbook.add_chart({'type' : 'line'})   # 設置線條類型的圖表對象

close()方法

workbook.close()    # 關閉工作表文件

Worksheet類

Worksheet代表了一個Excel工作表,是XlsxWriter模塊操作Excel內容最核心的一個類,例如將數據寫入到單元格或者工作表格式佈局等。
Workbook對象通過add_worksheet()方法來創建。

write(row, col, *args)方法

其作用是將普通數據寫入到工作表單元格。
參數row爲行標,col爲列標,座標檢索起始值爲0
*args無名字參數爲數據內容,可以是數字、公式、字符串或格式對象。
write方法已經作爲其它更加具體數據類型方法的別名。如以下幾種:

  • write_string(),寫入字符串類型數據;
  • write_number(),寫入數據類型數據;
  • write_blank(),寫入空類型數據;
  • write_formula(),寫入公式型數據;
  • write_datetime(),寫入日期類型數據;
  • wrtie_boolean(),寫入邏輯類型數據;
  • write_url(),寫入超鏈接類型數據。
import xlsxwriter

workbook = xlsxwriter.Workbook('Demo2.xlsx')    # 創建一個名爲Dome2.xlsx的表格
worksheet1 = workbook.add_worksheet()           # 添加第一個表單,默認爲sheet1
worksheet2 = workbook.add_worksheet('Files')    # 添加一個名爲File的表單
worksheet3 = workbook.add_worksheet()           # 添加一個表單,默認爲sheet3

worksheet1.write(0, 0, 'Hello')     # write_string()
worksheet1.write(1, 0, 1.23)        # write_number()
worksheet1.write(2, 0, '')          # write_blank()
worksheet1.write(3, 0, None)        # write_blank()
worksheet1.write(4, 0, '=SIN(PI()/4)')  # write_formula()

workbook.close()

運行上述代碼所產生的工作表
工作表

set_row(row, height, cell_format, options)方法

其作用是設置行單元格屬性。
- rowint類型),指定行位置,起始下標爲0
- heightfloat類型),設置行高,單位爲像素;
- cell_formatformat類型)指定格式對象;
- optionsdict類型)設置行hidden(隱藏)、level(組合分級)、collapsed(摺疊)。

import xlsxwriter

workbook = xlsxwriter.Workbook('Demo2.xlsx')  # 創建一個名爲Dome2.xlsx的表格
worksheet1 = workbook.add_worksheet()  # 添加第一個表單,默認爲sheet1

worksheet1.write('A1', 'Hello')         # 在單元格A1寫入‘Hello’字符串
cell_format = workbook.add_format({'bold': True})   # 定一個加粗的格式對象
worksheet1.set_row(0, 40, cell_format)      # 第一行單元格高度爲40px,且引用加粗格式對象
worksheet1.set_row(1, None, None, {'hidden': True})     # 隱藏第2行單元格
workbook.close()

設置行

set_column(first_col, last_col, cell_format, options)方法

同上一個方法類似,這個方法是用於設置一列或多列單元格屬性。

insert_image(row, col, image[,options])方法

其作用是插入圖片到指定單元格,支持PNG\JPG\BMP等圖片格式
- row爲行座標,col爲列座標,座標索引起始位置爲0
- imagestring類型)爲圖片路徑;
- optionsdict類型)爲可選參數,指定圖片的位置、比例、鏈接url等信息。

import xlsxwriter

workbook = xlsxwriter.Workbook('Demo2.xlsx')  # 創建一個名爲Dome2.xlsx的表格
worksheet1 = workbook.add_worksheet()  # 添加第一個表單,默認爲sheet1

worksheet1.insert_image(2, 2, 'blog.png')       # 在第三行第三列插入一張圖片
workbook.close()

插入圖片所生成的表格
插入圖片


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