自動化測試 處理Excel(xlrd,openpyxl 模組)
(轉載https://www.testwo.com/blog/7269)
Python處理Excel常用操作就是讀和寫,我的需求是需要在原excel檔案中進行讀寫操作。共用到了兩個模組xlrd和openpyxl,這兩個模組都是需要自己去安裝的。openpyxl只能用來處理 Excel 2007 及以上版本的 excel 檔案,也就是 .xlsx/.xlsm 格式的表格檔案
xlrd模組
使用步驟及方法:
-
開啟檔案:
import xlrd
excel=xlrd.open_workbook(‘E:/test.xlsx’)
-
獲取sheet:
table = excel.sheets()[0] #通過索引獲取
table = excel.sheet_by_index(0) #通過索引獲取
table = excel.sheet_by_name(‘Sheet1’) #通過表名獲取
備註:以下方法的操作都要在sheet基礎上使用
-
獲取行數和列數:
rows=table.nrows #獲取行數
cols=table.ncols #獲取列數
-
獲取單元格值:
Data=table.cell(row,col).value #獲取表格內容,是從第一行第一列是從0開始的,注意不要丟掉 .value
-
獲取整行或整列內容
Row_values=table.row_values(i) #獲取整行內容
Col_values=table.col_values(i) #獲取整列內容
Openpyxl模組
讀
-
開啟檔案:
from openpyxl import load_workbook
excel=load_workbook(‘E:/test.xlsx’)
-
獲取sheet:
table = excel.get_sheet_by_name(‘Sheet1’) #通過表名獲取
-
獲取行數和列數:
rows=table.max_row #獲取行數
cols=table.max_column #獲取列數
-
獲取單元格值:
Data=table.cell(row=row,column=col).value #獲取表格內容,是從第一行第一列是從1開始的,注意不要丟掉 .value
寫
-
#開啟檔案
excel=load_workbook(‘E:/test.xlsx’)
sheet=excel.active
-
#設定單元格的值,兩種方式
sheet.cell(row=2,column=5).value=99
sheet.cell(row=3,column=5,value=100)
-
#儲存修改的檔案
excel.save(‘E:/test.xlsx’)