如果我有一本包含列表值的字典:
users = {'first-name': ['Jim', 'John', 'Jane'], 'last-name': ['Boothe', 'Smith', 'Doe'], 'user': ['100', '101', '102']}
如何创建一个新的字典列表,将初始字典列表的每个索引与初始键分开。
我的意思是给定上面的初始字典,我想创建以下内容:
payload = [{'first-name': 'Jim", 'last-name': 'Boothe', 'user': '100'}, {'first-name': 'John', 'last-name': 'Smith', 'user': '101'}, {'first-name': 'Jane', 'last-name': 'Doe', 'user': '102'} ]
我很难循环遍历每个键值索引并将其转换为带有初始键的新字典。
我已经排序了如何将我的第一本字典放入我的新列表,只是在循环其余索引时遇到问题。
users = {'first-name': ['Jim', 'John', 'Jane'], 'last-name': ['Boothe', 'Smith', 'Doe'], 'user': ['100', '101', '102']}
for k in users:
dict[k] = users[k][0]
payload = [dict]
print(payload)
输出:
[{'user': '100', 'first-name': 'Jim', 'last-name': 'Boothe'}]
但我该如何在此基础上继续发展呢?
假设所有列表的长度始终相等:
result = [{key: value[i] for key, value in users.items()} for i in range(len(users["first-name"]))]