您好,登錄后才能下訂單哦!
本篇內容介紹了“python怎么用xlsxwriter模塊處理excel文件”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
模塊安裝:
pip install xlsxwriter
安裝完畢,直接在文件中進行模塊導入,測試是夠存在BUG。
import xlsxwriter
該模塊看名字就能知道其用法,它是用來向 Excel 中寫入數據的模塊,其中限制 Excel 版本為2007+。
接下來完成一個基本的流程,創建文件并寫入數據:
import xlsxwriter # 創建工作簿 workbook = xlsxwriter.Workbook('測試.xlsx') # 添加工作表 worksheet = workbook.add_worksheet() # 寫入hello world 到 A1 單元格 worksheet.write('A1', 'Hello World') # 關閉Excel文件 workbook.close()
代碼的流程為創建工作簿,創建工作表,寫入數據到指定單元格。
上述案例是最簡單的應用,我們可以對其進行擴展,添加更多的樣式。
相關注釋已經寫到代碼中,可以配合注釋進行學習。
import xlsxwriter # 創建工作簿 workbook = xlsxwriter.Workbook('測試.xlsx') # 創建工作表 worksheet = workbook.add_worksheet('測試Sheet') # 設置單一列寬度 worksheet.set_column('A:A', 20) # 設置加粗樣式 bold = workbook.add_format({'bold': True}) # 寫入數據 A1 worksheet.write('A1', 'Hello') # 寫入數據 A2 worksheet.write('A2', 'world', bold) # 寫入數據 B1 worksheet.write('B1', u'世界你好') workbook.close()
上表中關于設置列寬的函數 set_column()
,可擴展學習的函數有:
worksheet.set_column("A:B", 15)
:依據列名設置區域列寬度;
worksheet.set_column("0:1", 15)
:依據索引更新列寬度;
worksheet.set_row(1, 30)
:設置單一行高度。
上文僅設置了一個加粗樣式,你可以對其它樣式進行配置
# 設置列頭樣式 head_format = workbook.add_format({ 'bold': True, # 字體加粗 'border': 1, # 單元格邊框寬度 'align': 'left', # 對齊方式 'valign': 'vcenter', # 字體對齊方式 'fg_color': '#03A9F4', # 單元格背景顏色 'font_size': 12 # 字體大小 })
除了整體配置外,也可以使用對象方法的形式進行設置,設置完畢之后的用法就是在 worksheet.write()
方法中攜帶該參數。
workfomat = workbook.add_format() workfomat.set_bold(1) # 設置加粗 workfomat.set_border(1) # 設置邊框 workfomat.set_num_format('0.00') # 格式化數據格式為小數點后兩位 workfomat.set_align('center') # 設置水平對齊方式 workfomat.set_bg_color('#ff0000') # 設置單元格前景色 # 設置加粗樣式 bold = workbook.add_format({'bold': True}) # 寫入數據 A1 worksheet.write('A1', 'Hello', workfomat)
除了write()
方法以外,該模塊還存在一些擴展方法,具體如下:
write_string()
:寫入字符串;
write_number()
:寫入數字;
write_blank()
:將帶有格式的空白字符寫入工作表單元格,僅保留單元格樣式。
write_formula()
:寫入公式;
write_datetime()
:寫入時間;
write_boolean()
:寫入布爾值;
write_url()
:寫入鏈接。
還有一些未羅列,可以參考下圖:
如果希望插入圖片,參考下述代碼即可:
# 插入圖片,參數1為單元格,參數2為圖片地址 worksheet.insert_image('B2','cup_PNG2001.png')
在操作 Excel 文件之后,記住一定要關閉文件,代碼如下:
workbook.close()
xlsxwriter 模塊還存在一些函數,很多時候可以輔助我們進行代碼編寫。
write_row(row, col, data, cell_format=None)
:列固定,寫入數據;
write_column(row, col, data, cell_format=None)
:行固定,寫入數據;
insert_textbox(row, col, text, options=None)
:單元格寫入文本框
insert_chart(row, col, chart, options=None)
:插入圖表;
activate()
:設置活躍工作表;
merge_range(first_row, first_col, last_row,last_col,data, cell_format=None)
:合并單元格;
conditional_format(first_row, first_col, last_row, last_col,options=None)
:條件格式;
寫入功能非常全 除了基本設置以外,字體設置、前景色、背景色、邊框設置、單元格合并、公式、單元格注釋、行高設置、列寬設置……
xlsxwriter支持大文件寫入 在數據量特別大的情況下,可以啟用 constant memory
模式,即可開始逐行即時寫入功能,從而避免數據一次性讀取到內存中。
不支持讀取和修改 Excel 文件 看名字就能之后,xlsxwriter 是寫入數據的模塊,所以其不能讀取 Excel 文件。
不支持XLS文件 xlsxwriter 不支持創建 xls 后綴結尾的 excel 文件。
“python怎么用xlsxwriter模塊處理excel文件”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。