在 python 中添加基于半列的列表的多个字典
Adding multiple dictionaries of list based on semi column in python
我有资料
data = [{'name': 'Dave', 'role': 'Manager'}, {'name': 'David', 'role': 'Engineer'}]
我打算添加基于相同键的值并用分号合并。
预期输出如下
{'name': 'Dave;David', 'role': 'Manager;Engineer'}
我想做的是转换成矩阵,然后根据索引添加所有元素,但这是非常乏味的方法。
result = [[i[e] for e in sorted(i.keys())] for i in data]
print(result)
current output: [['Dave', 'Manager'], ['David', 'Engineer']]
假设数据总是包含字符串字典,下面就是你想要的。
我正在检查每个字典键是否已存在于最终字典中。如果没有,我添加它,如果有,我使用分号作为分隔符将它附加到当前值。
data = [{'name': 'Dave', 'role': 'Manager'}, {'name': 'David', 'role': 'Engineer'}]
final = {}
for dict in data:
for k,v in dict.items():
if k in final:
final[k] += ';' + v
else:
final[k] = v
print(final)
我有资料
data = [{'name': 'Dave', 'role': 'Manager'}, {'name': 'David', 'role': 'Engineer'}]
我打算添加基于相同键的值并用分号合并。 预期输出如下
{'name': 'Dave;David', 'role': 'Manager;Engineer'}
我想做的是转换成矩阵,然后根据索引添加所有元素,但这是非常乏味的方法。
result = [[i[e] for e in sorted(i.keys())] for i in data]
print(result)
current output: [['Dave', 'Manager'], ['David', 'Engineer']]
假设数据总是包含字符串字典,下面就是你想要的。
我正在检查每个字典键是否已存在于最终字典中。如果没有,我添加它,如果有,我使用分号作为分隔符将它附加到当前值。
data = [{'name': 'Dave', 'role': 'Manager'}, {'name': 'David', 'role': 'Engineer'}]
final = {}
for dict in data:
for k,v in dict.items():
if k in final:
final[k] += ';' + v
else:
final[k] = v
print(final)