Python資料包表之Excel操作模組常用方法

2021-10-04 10:23:43 字數 4893 閱讀 4679

python資料包表之excel操作模組常用方法

展開一 workbook類

1 點睛

workbook類定義:workbook(filename[,options]),該類實現建立乙個xlsxwriter的workbook物件。

workbook類代表整個電子**文 件,並且儲存在磁碟上。

filename(string型別)為建立的excel檔案 儲存路徑;

options(dict型別)為可選的workbook引數,一般作為初始化工作表內容格式,例如值為表示使用 worksheet.write()方法時啟用字串轉換數字。

2 add_worksheet([sheetname])

2.1 點睛 

作用是新增乙個新的工作 表,引數sheetname(string型別)為可選的工作表名稱,預設為sheet1。

2.2 **

#coding: utf-8

import xlsxwriter

#建立乙個excel檔案

workbook = xlsxwriter.workbook('demo2.xlsx')

worksheet1 = workbook.add_worksheet()             # sheet1

worksheet2 = workbook.add_worksheet('foglio2')    # foglio2

worksheet3 = workbook.add_worksheet('data')       # data

worksheet4 = workbook.add_worksheet()            # sheet4

#關閉excel檔案

workbook.close()

2.3 效果

3 add_format([properties])

3.1 點睛

作用是在工作表中建立乙個新的格式物件來格式化單元格。

引數properties(dict型別)為指定乙個格式屬性的字典,例如設定乙個加粗的格式物件, workbook.add_format()。

通過format methods(格式化方法)也可以實現格式的設定,等價的設定加粗格式**如下:

bold = workbook.add_format()

bold.set_bold()

更多格式化方法見

3 add_chart(options)

3.1 點睛

作用是在工作表中建立乙個圖表物件,內部是通過insert_chart()方法來實現,引數options(dict型別)為圖表指定乙個字典屬性,例如設定乙個線條型別的圖表物件,**為 

chart=workbook.add_chart()

4 close()

作用是關閉工作表檔案,如workbook.close()。

二  worksheet類

1 點睛

worksheet類代表了乙個excel工作表,是xlsxwriter模組操作excel內容最核心的乙個類,例如將資料寫入單元格或工作**式布局等。 worksheet物件不能直接例項化,取而代之的是通過workbook物件呼叫 add_worksheet()方法來建立。worksheet類提供了非常豐富的操作 excel內容的方法。

2 write(row,col,*args)

作用是寫普通資料到工作表的單 元格,引數row為行座標,col為列座標,座標索引起始值為0;*args無名字引數為資料內容,可以為數字、公式、字串或格式物件。

3 write_string()

寫入字串型別資料,例如:worksheet.write_string(0, 0, 'your text here')

4 write_number()

寫入數字型別資料,例如:worksheet.write_number('a2', 2.3451)

5 write_blank()

寫入空型別資料,例如:worksheet.write('a2', none)

6 write_formula()

寫入公式型別資料,例如:worksheet.write_formula(2, 0, '=sum(b1:b5)')

7 write_datetime()

寫入日期型別資料,例如:worksheet.write_datetime(7, 0,datetime.datetime.strptime('2013-01-23', '%y-%m-%d'),workbook.add_format())

8 write_boolean()

寫入邏輯型別資料,例如:worksheet.write_boolean(0, 0, true)

9 write_url()

10 實戰

10.1 **

#coding: utf-8

import xlsxwriter

import math

#建立乙個excel檔案

workbook = xlsxwriter.workbook('demo3.xlsx')

worksheet = workbook.add_worksheet()             # sheet

worksheet.write(0,0, 'hello')           # write_string()

worksheet.write(1,0,'world')            # write_string()

worksheet.write(2, 0, 2)                # write_number()

worksheet.write(3, 0, 3.00001)          # write_number()

worksheet.write(5, 0, '')               # write_blank()

worksheet.write(6, 0, none)             # write_blank()

#關閉excel檔案

workbook.close()

10.2 結果

11 set_row(row,height,cell_format,options)

作用是設定行單元格的屬性。

row(int型別)指定行位置,起始下標為0;

height(float型別)設定行高,單位畫素;

cell_format(format型別)指定格式物件;

options(dict型別)設定行hidden(隱藏)、 level(組合分級)、collapsed(摺疊)。

11.1 **

#coding: utf-8

import xlsxwriter

import math

#建立乙個excel檔案

workbook = xlsxwriter.workbook('demo4.xlsx')

worksheet = workbook.add_worksheet()             # sheet1

worksheet.write('a1','hello')     #在a1單元格寫入'hello'字串

cell_format = workbook.add_format()   #定義乙個加粗的格式物件

worksheet.set_row(0, 40, cell_format)        #設定第1行單元格高度為40畫素,且引用加粗格式物件

worksheet.set_row(1,none,none,)    #隱藏第2行單元格

#關閉excel檔案

workbook.close()

11.2 結果

12 set_column(first_col,last_col,width,cell_format,options)

作用為設定一列或多列單元格屬性。

first_col(int型別)指定 開始列位置,起始下標為0;

last_col(int型別)指定結束列位置, 起始下標為0,可以設定成與first_col一樣;

width(float型別)設定 列寬;

cell_format(format型別)指定格式物件;

options(dict 型別)設定行hidden(隱藏)、level(組合分級)、collapsed(折 疊)。

12.1 **

#coding: utf-8

import xlsxwriter

import math

#建立乙個excel檔案

workbook = xlsxwriter.workbook('demo5.xlsx')

worksheet = workbook.add_worksheet()             # sheet1

worksheet.write('a1','hello')           #在a1單元格寫入'hello'字串

worksheet.write('b1', 'world')          #在b1單元格寫入'world'字串

# 定義乙個加粗的格式物件

cell_format = workbook.add_format()

# 設定0到1即(a到b) 列單元格寬度為10畫素,且引用加粗格式物件

worksheet.set_column(0,1,10,cell_format)

worksheet.set_column('c:d',20)    #設定c到d列單元格寬度為20畫素

worksheet.set_column('e:g',none,none,) #隱藏e到g列單元格

#關閉excel檔案

workbook.close()

12.2 結果

13 insert_image(row,col,image[,options])

作用是插入到指定單元格,支援png、jpeg、bmp等格式。

row為行座標,

col為列座標,座標索引起始值為0;

引數image(string型別)為路徑;

交叉資料包表

有時候需要旋轉結果以便在水平方向顯示列,而在垂直方向顯示行。這就是所謂的建立 pivottable 建立交叉資料包表或旋轉資料。假定有乙個表pivot,其中每季度佔一行。對pivot的 select 操作在垂直方向上列出這些季度 year quarter amount 1990 1 1.1 1990...

交叉資料包表

有時候需要旋轉結果以便在水平方向顯示列,而在垂直方向顯示行。這就是所謂的建立 pivottable 建立交叉資料包表或旋轉資料。假定有乙個表pivot,其中每季度佔一行。對pivot的 select 操作在垂直方向上列出這些季度 year quarter amount 1990 1 1.1 1990...

交叉資料包表

ql交叉資料包表 有時候需要旋轉結果以便在水平方向顯示列,而在垂直方向顯示行。這就是所謂的建立 pivottable?建立交叉資料包表或旋轉資料。假定有乙個表 pivot,其中每季度佔一行。對 pivot 的 select 操作在垂直方向上列出這些季度 year quarter amount 199...