python XlsxWriter模塊創(chuàng)建aexcel表格的實(shí)例講解
安裝使用pip install XlsxWriter來(lái)安裝,Xlsxwriter用來(lái)創(chuàng)建excel表格,功能很強(qiáng)大,下面具體介紹:
1.簡(jiǎn)單使用excel的實(shí)例:
#coding:utf-8 import xlsxwriter workbook = xlsxwriter.Workbook('d:\\suq\\test\\demo1.xlsx') #創(chuàng)建一個(gè)excel文件 worksheet = workbook.add_worksheet('TEST') #在文件中創(chuàng)建一個(gè)名為TEST的sheet,不加名字默認(rèn)為sheet1 worksheet.set_column('A:A',20) #設(shè)置第一列寬度為20像素 bold = workbook.add_format({'bold':True}) #設(shè)置一個(gè)加粗的格式對(duì)象 worksheet.write('A1','HELLO') #在A1單元格寫上HELLO worksheet.write('A2','WORLD',bold) #在A2上寫上WORLD,并且設(shè)置為加粗 worksheet.write('B2',U'中文測(cè)試',bold) #在B2上寫上中文加粗 worksheet.write(2,0,32) #使用行列的方式寫上數(shù)字32,35,5 worksheet.write(3,0,35.5) #使用行列的時(shí)候第一行起始為0,所以2,0代表著第三行的第一列,等價(jià)于A4 worksheet.write(4,0,'=SUM(A3:A4)') #寫上excel公式 worksheet.insert_image('B5','f:\\1.jpg') #插入一張圖片 workbook.close()
2.常用方法說(shuō)明
1.Workbook類
Workbook類創(chuàng)建一個(gè)XlsxWriter的Workbook對(duì)象,代表整個(gè)電子表格文件,存儲(chǔ)到磁盤上.
add_worksheet():用來(lái)創(chuàng)建工作表,默認(rèn)為sheet1
add_format():創(chuàng)建一個(gè)新的格式對(duì)象來(lái)格式化單元格,例如bold=workbook.add_format({'bold':True})
還可以使用set_bold,例如:bold=workbook.add_format() bold.set_bold()
#border:邊框,align:對(duì)齊方式,bg_color:背景顏色,font_size:字體大小,bold:字體加粗 top = workbook.add_format({'border':1,'align':'center','bg_color':'cccccc','font_size':13,'bold':True})
add_chart(options):創(chuàng)建一個(gè)圖表對(duì)象,內(nèi)部是使用insert_chart()方法來(lái)實(shí)現(xiàn)的,options(dict類型)為圖表指定一個(gè)字典屬性
close():關(guān)閉文件
2.Worksheet類
worksheet代表一個(gè)Excel的工作表,是XlsxWriter的核心,下面是幾個(gè)核心方法
write(row,col,*args):寫普通數(shù)據(jù)到工作表的單元格,row行坐標(biāo),col列坐標(biāo),起始都是以0開(kāi)始,*args為寫入的內(nèi)容,可以是字符串,文字,公式等,writer方法已經(jīng)作為其它更具體數(shù)據(jù)類型方法的別名
write_string():寫入字符串類型,worksheet.write_string(0,0,'your text')
write_number():寫入數(shù)字類型,worksheet.write_number('A2',1.1)
write_blank():寫入空類型數(shù)據(jù),worksheet.write_blank('A2',None)
wirte_formula():寫入公式類型,worksheet.write_formula(2,0,'=SUM(B1:B5))
write_datetime():寫入日期類型數(shù)據(jù),worksheet.write_datetime(7,0,datetime.datetime.strptime('2014-01-02','%Y-%m-%d),workbook.add_format({'num_format':'yyyy-mm-dd'}));
write_boolean():寫入邏輯類數(shù)據(jù),worksheet.write_boolean(0,0,True)
write_url():寫入超鏈接類型數(shù)據(jù),worksheet.write_url('A1','ftp://www.python.org')
write_column():寫入到一列,后面接一個(gè)數(shù)組
wirte_row():寫入到一行,后面接一個(gè)數(shù)組
set_row(row,height,cell_format,options):此方法設(shè)置行單元格的屬性,row指定行位置,height指定高度,單位是像素,cell_format
指定格式對(duì)象,參數(shù)options設(shè)置hiddeen(隱藏),level(組合分級(jí)),collapsed(折疊,例如:
cell_format=workbook.add_format({'bold':True})
worksheet.set_row(0,40,cell_format) 設(shè)置第一行高40,加粗
set_column(first_col,last_col,width,cell_format,options):
設(shè)置列單元格的屬性,具體參數(shù)說(shuō)明如上.worksheet.set_column(0,1,10) worksheet.set_column('C:D',20)
insert_image(row,col,image[,options]):此方法是插入圖片到指定單元格
例如插入一個(gè)圖片的超鏈接為www.python.org
worksheet.insert_image('B5','f:\\1.jpg',{'url':'http://www.python.org'})
3.Chart類
Chart類實(shí)現(xiàn)XlsxWriter模塊中的圖標(biāo)組件的基類,支持的圖表類型包括面積,條形圖,柱形圖,折形圖,餅圖,散點(diǎn)圖,股票和雷達(dá). 一個(gè)圖表對(duì)象是通過(guò)Workbook的add_chart方法創(chuàng)建,通過(guò){type,'圖表類型'}字典參數(shù)指定圖表的類型,語(yǔ)句如下:
chart = workbook.add_chart({type,'column'}) #創(chuàng)建一個(gè)column圖表
更多圖表類型說(shuō)明:
area:創(chuàng)建一個(gè)面積樣式的圖表;
bar:創(chuàng)建一個(gè)條形樣式的圖表;
column:創(chuàng)建一個(gè)柱形樣式的圖表;
line:創(chuàng)建一個(gè)線條樣式的圖表
pie:創(chuàng)建一個(gè)餅圖樣式的圖表
scatter:創(chuàng)建一個(gè)散點(diǎn)樣式的圖表
stock:創(chuàng)建一個(gè)股票樣式的圖表;
radar:創(chuàng)建一個(gè)雷達(dá)央視的圖表
然后通過(guò)insert_chart()方法插入到指定的位置,語(yǔ)句如下:
worksheet.insert_chart('A7',chart)
chart.add_series(options)方法,作用是添加一個(gè)數(shù)據(jù)系列到圖表,參數(shù)options(dict類型)設(shè)置圖表系列選項(xiàng)的字典,操作示例如下:
chart.add_series({ 'categories':'=Sheet1!$A$$1:$A$5', 'values':'=Sheet1!$A$$1:$A$5', 'line':={'color':'red'} })
categories,values,line最為常用,categories作用是設(shè)置圖表類別標(biāo)簽范圍;values是設(shè)置圖表數(shù)據(jù)范圍,line為設(shè)置圖表線條屬性,包括顏色寬度等.
set_x_axis(options):設(shè)置圖表X軸選項(xiàng),例如:
chart.set_x_axis({ 'name':'EARNING per quarter', 'name_font':{'size':14,'bold':True}, 'num_font':{'italic':True} })
set_size(options):設(shè)置圖表的大小,如
chart.set_size({'width':720,'height':576})
set_title(options):設(shè)置標(biāo)題,如chart.set_title({'name':'TEST TITLE'}
set_style(style_id):設(shè)置圖表樣式,
set_table(options):設(shè)置x軸為數(shù)據(jù)表格式
下面是一個(gè)創(chuàng)建文件系統(tǒng)使用率的實(shí)例:
#coding:utf-8 import xlsxwriter workbook = xlsxwriter.Workbook('d:\\suq\\test\\demo1.xlsx') #創(chuàng)建一個(gè)excel文件 worksheet = workbook.add_worksheet('sheet1') #在文件中創(chuàng)建一個(gè)sheet #border:邊框,align:對(duì)齊方式,bg_color:背景顏色,font_size:字體大小,bold:字體加粗 top=workbook.add_format({'border':6,'align':'center','bg_color':'cccccc','font_size':13,'bold':True}) #設(shè)置單元格格式 title=[u'文件系統(tǒng)',u'總?cè)萘?,u'使用大小',u'剩余大小'] #設(shè)置第一行標(biāo)題信息 buname=['/dev/mapper/vg_basic-lv_root','tmpfs','/dev/sda1'] #設(shè)置左邊第一排信息 worksheet.write_row('A1',title,top) worksheet.write_column('A2',buname,top) worksheet.set_column('A:D',40) #A到D列設(shè)置寬度,寬度設(shè)置必須是整列設(shè)置,高度必須是整行設(shè)置 #worksheet.set_row(0,40) #設(shè)置第一行高度為40像素 format_data=workbook.add_format({'align':'center','font_size':13}) #設(shè)置單元格格式 data=[[17678,4393,12388],[9768,8900,868],[24285,2715,21000]] #模擬文件系統(tǒng)的數(shù)據(jù),data[0],[1],[2]分別表示全部空間,使用空間,剩余空間 worksheet.write_row('B2',data[0],format_data) #將數(shù)據(jù)寫入,這里安裝整行寫入 worksheet.write_row('B3',data[1],format_data) worksheet.write_row('B4',data[2],format_data) chart=workbook.add_chart({'type':'column'}) #創(chuàng)建表格,表格類型為column chart.set_title({'name':u'文件系統(tǒng)使用率'}) #設(shè)置表格的title for i in ['B','C','D']: chart.add_series({ 'categories': 'sheet1!$A$2:$A$4', 'values':'sheet1!$'+i+'$2:$'+i+'$4', 'name':'=sheet1!$'+i+'$1' }) #注意上面的表格中,每一行的數(shù)據(jù)在圖中會(huì)顯示在一起,也就是說(shuō)values為B2:B4 chart.set_size({'width':800,'height':500}) #設(shè)置表格的大小 chart.set_y_axis({'name': 'MB'}) #設(shè)置表格y軸信息 #chart.set_style(33) #設(shè)置表格的樣式 worksheet.insert_chart('A8',chart) #插入表格 workbook.close()
顯示的圖片結(jié)果如下:
以上這篇python XlsxWriter模塊創(chuàng)建aexcel表格的實(shí)例講解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- python操作excel的方法(xlsxwriter包的使用)
- python操作excel的包(openpyxl、xlsxwriter)
- python xlsxwriter創(chuàng)建excel圖表的方法
- python使用xlsxwriter實(shí)現(xiàn)有向無(wú)環(huán)圖到Excel的轉(zhuǎn)換
- Python3讀寫Excel文件(使用xlrd,xlsxwriter,openpyxl3種方式讀寫實(shí)例與優(yōu)劣)
- python利用xlsxwriter模塊 操作 Excel
- python 使用xlsxwriter循環(huán)向excel中插入數(shù)據(jù)和圖片的操作
- python中openpyxl和xlsxwriter對(duì)Excel的操作方法
- python處理excel文件之xlsxwriter?模塊
相關(guān)文章
Python基于分析Ajax請(qǐng)求實(shí)現(xiàn)抓取今日頭條街拍圖集功能示例
這篇文章主要介紹了Python基于分析Ajax請(qǐng)求實(shí)現(xiàn)抓取今日頭條街拍圖集功能,涉及Python針對(duì)今日頭條URL請(qǐng)求與json數(shù)據(jù)處理相關(guān)操作技巧,需要的朋友可以參考下2018-07-07Python 日期區(qū)間處理 (本周本月上周上月...)
這篇文章主要介紹了Python 日期區(qū)間處理 (本周本月上周上月...),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08Python筆記之a(chǎn) = [0]*x格式的含義及說(shuō)明
這篇文章主要介紹了Python筆記之a(chǎn) = [0]*x格式的含義及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05python游戲?qū)崙?zhàn)項(xiàng)目之俄羅斯方塊的魅力
遲早一定會(huì)掛掉的俄羅斯方塊,為什么至今仍是世界游戲之王?它是怎么編寫的?本文將給大家詳細(xì)的介紹,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值2021-09-09教你如何把Python CSV 合并到多個(gè)sheet工作表
今天我們要實(shí)現(xiàn)將多個(gè)CSV文件,合并到一個(gè)Excel文件中的,多個(gè)sheet工作表,網(wǎng)上大多方法都是將csv直接合并在一起,也不分別創(chuàng)建sheet表。接下來(lái)通過(guò)本文給大家詳細(xì)介紹下,需要的朋友參考下吧2021-11-11python動(dòng)畫manim中的顏色ManimColor的使用方法詳解
這篇文章主要介紹了python動(dòng)畫manim中的顏色ManimColor的使用方法,本文通過(guò)實(shí)例圖文展示給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-08-08python第三方庫(kù)easydict的使用實(shí)例詳解
在?Python?中當(dāng)我們需要訪問(wèn)字典中的元素的時(shí)候,我們需要使用類似?a['example']?的形式來(lái)進(jìn)行使用,這個(gè)時(shí)候就可以使用 easydict 這個(gè)模塊了,今天通過(guò)本文給大家講解python第三方庫(kù)easydict的使用,感興趣的朋友跟隨小編一起看看吧2022-11-11解決Pycharm出現(xiàn)的部分快捷鍵無(wú)效問(wèn)題
今天小編就為大家分享一篇解決Pycharm出現(xiàn)的部分快捷鍵無(wú)效問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-10-10