項目中需要生成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文件