login.xls文件
read_excel.py文件
''' import xlrd def read_excel(): l1 = [] data = xlrd.open_workbook('login.xls') # 打開login.xls文件,獲得句柄 sheet = data.sheet_by_index(0) # 獲取第一個工作表(就是excel底部的sheet) for item in range(1, sheet.nrows): # nrows,返回該工作表有效行數 # print(sheet.row_values(item)) # row_values(num)讀取num行整行數據,返回的是列表類型 l1.append(sheet.row_values(item)) return l1 # print(read_excel()) '''
test_excel_login.py文件
''' import pytest import requests import json from pytest_study.read_excel import * @pytest.mark.parametrize( 'data', read_excel() ) def test_excel_login_001(data): r = requests.post(url=data[0], data=json.loads(data[1])) assert r.json()['code']==json.loads(data[2])['code'] if __name__ == '__main__': pytest.main(['-v', '-s', 'test_excel_login.py']) '''
xlrd模塊學習
1 打開Excel文件
''' data = xlrd.open_workbook('login.xls') # 猶如獲得一個句柄 '''
2 工作表sheet的操作
''' table = data.sheets()[0] #通過索引順序獲取 table = data.sheet_by_index(sheet_indx)) #通過索引順序獲取 table = data.sheet_by_name(sheet_name)#通過名稱獲取 以上三個函數都會返回一個xlrd.sheet.Sheet()對象 names = data.sheet_names() #返回book中所有工作表的名字 data.sheet_loaded(sheet_name or indx) # 檢查某個sheet是否導入完畢 '''
3 行的操作
''' nrows = table.nrows #獲取該sheet中的有效行數 table.row(rowx) #返回由該行中所有的單元格對象組成的列表 table.row_slice(rowx) #返回由該列中所有的單元格對象組成的列表 table.row_types(rowx, start_colx=0, end_colx=None) #返回由該行中所有單元格的數據類型組成的列表 table.row_values(rowx, start_colx=0, end_colx=None) #返回由該行中所有單元格的數據組成的列表 table.row_len(rowx) #返回該列的有效單元格長度 '''
4 列的操作
'''ncols = table.ncols #獲取列表的有效列數 table.col(colx, start_rowx=0, end_rowx=None) #返回由該列中所有的單元格對象組成的列表 table.col_slice(colx, start_rowx=0, end_rowx=None) #返回由該列中所有的單元格對象組成的列表 table.col_types(colx, start_rowx=0, end_rowx=None) #返回由該列中所有單元格的數據類型組成的列表 table.col_values(colx, start_rowx=0, end_rowx=None) #返回由該列中所有單元格的數據組成的列表 '''
5 單元格的操作
''' table.cell(rowx,colx) #返回單元格對象 table.cell_type(rowx,colx) #返回單元格中的數據類型 table.cell_value(rowx,colx) #返回單元格中的數據 table.cell_xf_index(rowx, colx) # 暫時還沒有搞懂 '''