很久不写东西了,最近在碰到一个问题到处baidu google 不得解,最后还是自己实现了。
python 自动化中 ,参数化数据读写会用到很多方式,读写.txt,.csv都比较容易,读写.xlsx也不是很难,只是在将xlsx 数据读取并转换成字典时遇到一些麻烦,最终自己解决了,纪录一下。
---------------------------------------------------------------------------------------------------------
from openpyxl import Workbook, load_workbook
def readXlsxAsDict(dataPath):
wb = load_workbook(dataPath)
current_sheet = wb["data"]
result_dict = []
# headers = list(current_sheet.iter_rows())[0]
# print(headers)
for i in range(1,current_sheet.max_row):
line = dict()
x = 0
for header in list(current_sheet.iter_rows())[0]:
# print(cel.value)
line[header.value] = list(current_sheet.iter_rows())[i][x].value
x +=1
result_dict.append(line)
return result_dict
if __name__ == '__main__':
xdata = readXlsxAsDict("../TestData/checkA.xlsx")
print(xdata)
xlsx文件数据类似这样的子的:
最终读取出来的:
[{'caseID': 'case_0001', 'pageURL': 'https://aaa.com', 'HotelHP': 'Sunshine City Prince Hotel Tokyo', 'CheckIn': '2018-08-10', 'CheckOut': '2018-08-15', 'Stars': 3, 'respect result': 1, 'compatibility': 'yes'}, {'caseID': 'case_0002', 'pageURL': 'https://bbb.com', 'HotelHP': 'Yanling Bloom Hot Spring Hotel', 'CheckIn': '2018-08-20', 'CheckOut': '2018-08-25', 'Stars': 4, 'respect result': 1, 'compatibility': 'no'}]
正是自己所需要的
就这么多....
