運行環境:
Python3.6
,Windwos10 RS1
,Pycharm
參考書籍—《Python自動化運維--技術與最佳實踐》
劉天斯著
XlsxWriter模塊中常用方法
Workbook類
Workbook類
定義:Workbook(filename[,options])
該類可以實現創建一個XlsxWriter
的Worbook
對象。Workbook
類表示整個電子表格文件。
- 參數
filename
(String
類型)爲創建的Excel
文件存儲路徑;- 參數
options
(Dict
類型)爲可選的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])方法
在工作表中創建一個新的格式對象來格式化單元格。參數properties
(Dict
類型)爲指定一個格式屬性的字典。
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)方法
其作用是設置行單元格屬性。
-row
(int
類型),指定行位置,起始下標爲0
;
-height
(float
類型),設置行高,單位爲像素;
-cell_format
(format
類型)指定格式對象;
-options
(dict
類型)設置行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
;
-image
(string
類型)爲圖片路徑;
-options
(dict
類型)爲可選參數,指定圖片的位置、比例、鏈接url
等信息。
import xlsxwriter
workbook = xlsxwriter.Workbook('Demo2.xlsx') # 創建一個名爲Dome2.xlsx的表格
worksheet1 = workbook.add_worksheet() # 添加第一個表單,默認爲sheet1
worksheet1.insert_image(2, 2, 'blog.png') # 在第三行第三列插入一張圖片
workbook.close()
插入圖片所生成的表格