python讀寫excel檔案

隨性者也發表於2018-10-06

專案中需要生成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檔案

相關文章