python 操作excel檔案——openpyxl, xlsxwriter, pandas
阿新 • • 發佈:2022-04-11
xlrd,xlwt兩個模組,但是xlwt這個模組只能輸出.xls檔案,不能輸出.xlsx檔案,而.xls最多隻能支援256列。
由於xlwt的侷限,所以不推薦使用,除非是要輸出老的03版excel檔案,現在應該不太會有這種要求了。
openpyxl和xlsxwriter都可以輸出10版的excel檔案,但是openpyxl在使用上要更麻煩一點,而且openpyxl有一個比較蛋疼的地方就是最合併單元格的格式有問題,會出現邊框不全等,openpyxl各個版本之間有所差異,經常升級以後就出現錯誤。
但是openpyxl可以讀入已有的excel表格,進行增量更新。這意味著,可以手動將excel表格的格式先建立好,讓後只用openpyxl去更新資料,這個對於格式比較複雜的excel表格效率提高很多。
xlsxwriter的使用和xlwt基本一樣,速度比openpyxl要快,但是不能讀取excel文件,如果要輸出excel文件,就必須從頭做起,包括文件的格式,如果文件有很多複雜的單元格式,就比較麻煩了,但是如果大批量的處理,還是值得的。
pandas讀取excel表格很方便,再加上pandas強大的資料處理功能,可以很容易生成目標資料,然後利用openpyxl或者xlsxwriter將資料寫進excel,鄙人基本都是這麼做的。有了pandas,xlrd幾乎沒用過。