python介面自動化(三十七)-封裝與呼叫--讀取excel 資料(詳解)
簡介
在進行軟體介面測試或設計自動化測試框架時,一個不比可避免的過程就是: 引數化,在利用python進行自動化測試開發時,通常會使用excel來做資料管理,利用xlrd、xlwt開源包來讀寫excel。例如:當我們登入的賬號有多個的時候,我們一般用
excel 存放測試資料,本篇文章介紹,python 讀取excel 方法,並儲存為字典格式。
官網
通過官網來檢視如何使用python讀取Excel,python excel官網: http://www.python-excel.org/,
1、以下是翻譯後的官網文件:
2、點選“文件”
3、點選“安裝說明”
4、根據以上安裝說明,進行準備
環境準備
1、以下是小編環境是:
作業系統:win10
python環境:python3.7
2、根據官方文件先安裝 xlrd 模組,開啟 cmd,輸入 pip install xlrd 線上安裝
3、出現紅色圈的內容表示xlrd安裝成功
python對Excel的基本操作
1、開啟電子表格檔案以進行資料提取,官方文件API
2、通過工作表索引、名稱獲取內容
3、例項1
(1)Excel內容
(2)程式碼實現
(3)執行結果
(4)參考程式碼1
1 # coding=utf-8 2 # 1.先設定編碼,utf-8可支援中英文,如上,一般放在第一行 3 4 # 2.註釋:包括記錄建立時間,建立人,專案名稱。 5 ''' 6 Created on 2019-5-20 7 @author: 北京-巨集哥 8 Project:學習和使用python讀取Excel 9 ''' 10 # 3.匯入模組 11 import xlrd 12 13 if __name__ == '__main__': 14 15 # excel檔案全路徑 16 xlPath = "C:\\Users\\DELL\\Desktop\\test.xlsx" 17 # 用於讀取excel 18 xlBook = xlrd.open_workbook(xlPath) 19 # 獲取excel工作簿數 20 count = len(xlBook.sheets()) 21 print(u"工作簿數為: ", count) 22 # 獲取 表 資料的行列數 23 table = xlBook.sheets()[0] 24 nrows = table.nrows 25 ncols = table.ncols 26 print(u"表資料行列為(%d, %d)" % (nrows, ncols)) 27 # 迴圈讀取資料 28 for i in range(0, nrows): 29 rowValues = table.row_values(i) # 按行讀取資料 30 # 輸出讀取的資料 31 for data in rowValues: 32 print(data, " ",) 33 print("")
4、參考程式碼2
1 # coding=utf-8 2 # 1.先設定編碼,utf-8可支援中英文,如上,一般放在第一行 3 4 # 2.註釋:包括記錄建立時間,建立人,專案名稱。 5 ''' 6 Created on 2019-5-20 7 @author: 北京-巨集哥 8 Project:學習和使用python讀取Excel 9 ''' 10 # 3.匯入模組 11 import xlrd 12 13 if __name__ == '__main__': 14 # 開啟 exlce 表格,引數是檔案路徑 15 data = xlrd.open_workbook('C:\\Users\\DELL\\Desktop\\test.xlsx') 16 # table = data.sheets()[0] # 通過索引順序獲取 17 # table = data.sheet_by_index(0) # 通過索引順序獲取 18 table = data.sheet_by_name(u'Sheet1') # 通過名稱獲取 19 nrows = table.nrows # 獲取總行數 20 ncols = table.ncols # 獲取總列數 21 # 獲取一行或一列的值,引數是第幾行 22 print(table.row_values(0)) # 獲取第一行值 23 print(table.col_values(0)) # 獲取第一列值
5、以上程式碼執行結果
Excel存放資料(引數)
1、在 excel 中存放資料,第一行為標題,也就是對應字典裡面的 key 值,如登入的引數:username,password
封裝讀取引數或者資料方法
1、最終讀取的資料是多個字典的 list 型別資料,第一行資料就是字典裡的 key 值,從第二行開始一一對應 value 值
2、封裝好的程式碼如下:
3、執行結果
小結
1、在安裝xlrd模組的時候後邊,還有一些黃色的警告,小夥伴們不需要的擔心,翻譯看一下,是需要更新pip
2、將提示的命令選中後,回車,另起一行貼上,執行即可將pip更新到最新版本
3、小夥伴們可能發現在執行結果的顯示:只有出現數字就會有個.0,解決辦法:
如果 excel 資料中有純數字的一定要右鍵》設定單元格格式》文字格式,要不然讀取的資料是浮點數(先設定單元格格式後編輯,編輯成功左上角有個小三角圖示)
修改單元格式,執行程式碼結果:可以清楚看到.0沒有了
4、好了關於python讀取Excel的內容,就先講解到這個,有興趣可以看其官方文件對錶格進行合併、樣式設定等等系列動作!