在做自動化測試時,當選擇的是數據驅動測試的模式時,通常會通過讀取文件的方式進行參數化。今天在學習讀取csv文件時,想到要如何去讀取excel文件,針對excel文件操作的方法會有所不同。
如果不安裝xlrd模塊而直接導入,會報錯不存在該模塊。
Step1:安裝xlrd模塊
1)到官網下載xlrd模塊:
這里包含很多Python中關於Excel的模塊,並且有詳細的說明和實例,可以研究。
2)解壓下載的模塊,用cmd方式進入到解壓的目錄,輸入命令:pip install xlrd, 按回車鍵等待安裝完成。
Step2:讀取Excel文件(注意我用的是Python3.6,所以在語法上與2.x會有差別,個人認為3.x更好用)
import xlrd #導入xlrd模塊
#讀取本地csv文件,打開excel文件(默認是rb方式打開)
myWorkbook = xlrd.open_workbook('bbb.xlsx')
#獲取excel工作表
mySheets = myWorkbook.sheets( ) #獲取工作表
list mySheet = mySheets[0] #通過索引獲取
#mySheet = myWorkbook.sheet_by_index(0) #通過索引順序獲得
#mySheet = myWorkbook.sheet_by_name(u'111') #通過名字獲取
#獲取行數和列數
nrows = mySheet.nrows
ncols = mySheet.ncols
print ("The rows: %d" %nrows)
print ("The cols: %d" %ncols)
#獲取一行和一列
for i in range(nrows):
myRowValues = mySheet.row_values(i)
print (myRowValues)
for j in range(ncols):
myColValues = mySheet.col_values(j)
print (myColValues)
#讀取單元格數據
'''mycell = mySheet.cell(i, j) #獲取單元格,i是行數,j是列數,行數和列數都是從0開始計數
mycellvalue = mycell.value #通過單元格獲取單元格數據
mycellvalue = mySheet.cell_value(i, j) #直接獲取單元格數據'''
mycellvalue = mySheet.cell_value(0,0) #改變i,j值則改變單元格
print (mycellvalue)
