'''
一道面试题
题目说明:
原数据cases 组合成 res1 数据样式
'''
cases = [
['case_id', 'case_title', 'url', 'data', 'excepted'],
[1, '用例1', 'www.baudi.com', '001', 'ok'],
[4, '用例4', 'www.baudi.com', '002', 'ok'],
[2, '用例2', 'www.baudi.com', '002', 'ok'],
[3, '用例3', 'www.baudi.com', '002', 'ok'],
[5, '用例5', 'www.baudi.com', '002', 'ok'],
]
res1 = [
{'case_id': 1, 'case_title': '用例1', 'url': 'www.baudi.com', 'data': '001', 'excepted': 'ok'},
{'case_id': 4, 'case_title': '用例4', 'url': 'www.baudi.com', 'data': '002', 'excepted': 'ok'},
{'case_id': 2, 'case_title': '用例2', 'url': 'www.baudi.com', 'data': '002', 'excepted': 'ok'},
{'case_id': 3, 'case_title': '用例3', 'url': 'www.baudi.com', 'data': '002', 'excepted': 'ok'},
{'case_id': 5, 'case_title': '用例5', 'url': 'www.baudi.com', 'data': '002', 'excepted': 'ok'}
]
思路:
1.res1列表里的元素是字典,每个字典的key是cases列表里第一个元素列表
2.cases[0]列表 和 cases[1:]的列表进行组合成字典(cases[0]作为key,cases[1:]作为值),然后添加到res1列表里
def datacase(list_d):
#定义字典的key
key = list_d[0]
#定义一个新列表,用于添加字典
ln = []
#从第2个元素列表循环读取,作为字典的值
for i in list_d[1:]:
#生成字典
d = dict(zip(key,i))
#添加到新列表里
ln.append(d)
return ln
f = datacase(cases)
print(f)