專案中需要生成excel表格,在網上查了一些資料後,整理記錄下。
1. 讀excel表格
1 ``` 2 讀取XLS,XLSX檔案 3 ``` 4 def readExcelFile(filename): 5 # 開啟工作表 6 workbook = xlrd.open_workbook(filename=filename) 7 # 用索引取第一個工作薄 8 booksheet = workbook.sheet_by_index(0) 9 # 返回的結果集 10 for i in range(booksheet.nrows): 11 print(booksheet.row_values(i))
依賴的庫:
import xlrd
程式碼解釋:
第6行,xlrd.open_workbook開啟一個已經存在的excel檔案,檔案不存在會造成開啟失敗。
第8行,通過索引獲取工作薄物件,workbook.sheet_by_index;也可以通過名稱獲取工作薄,workbook.sheet_by_name
第10行,booksheet.nrows獲取工作薄的總行數,同樣的,booksheet.ncols獲取工作薄的總列數
第11行,booksheet.row_values(i)獲取一整行的內容
該方法對python2.x和python3.x通用,也適用於開啟XLS,XLSX檔案
2. 寫excel檔案
``` 寫XLS,XLSX檔案 @filename 檔名 @header 列頭 @content 內容 ``` def writeExcelFile(filename, header, content): # 因為輸入都是Unicode字元,這裡使用utf-8,免得來回轉換 workbook = xlwt.Workbook(encoding=`utf-8`) booksheet = workbook.add_sheet(`Sheet 1`, cell_overwrite_ok=True) # 寫列頭 row = 0 for col in range(len(header)): booksheet.write(row, col, header[col]) # 寫內容 for lines in content: row += 1 for col in range(len(lines)): booksheet.write(row, col, lines[col]) # 儲存檔案 workbook.save(filename)
依賴的庫:
import xlwt
程式碼解釋:
寫excel檔案的大致過程是
1. xlwt.Workbook 先建一個workbook物件
2. 新增工作薄 workbook.add_sheet
3. 寫單元格 booksheet.write(row, col, text)
4. 儲存檔案 workbook.save
該方法對python2.x和python3.x通用,也適用於寫XLS,XLSX檔案