![](/img/trans.png)
[英]Python - how can I run separate module (not function) as a separate process?
[英]How can I separate JSON object elements into separate arrays in Python?
{'labels': 'Middle East', 'default': 193}
{'labels': 'Coronavirus pandemic', 'default': 116}
{'labels': 'Europe', 'default': 90}
{'labels': 'United States', 'default': 67}
{'labels': 'Health', 'default': 63}
我有上面的 JSON 对象。
我正在尝试在 python 中创建以下类型的数组。 请帮助
{'labels': ['Middle East', 'Coronavirus pandemic', 'Europe', 'United States', 'Health'], 'default': [193, 116, 90, 67, 63]}
您可以使用列表推导,假设您在数组中拥有所有这些字典:
dictionaries=[
{'labels': 'Middle East', 'default': 193},
{'labels': 'Coronavirus pandemic', 'default': 116},
{'labels': 'Europe', 'default': 90},
{'labels': 'United States', 'default': 67},
{'labels': 'Health', 'default': 63}]
labels=[d['labels'] for d in dictionaries]
default=[d['default'] for d in dictionaries]
result={'labels' : labels, 'default': default}
print(result)
Output:
{'labels': ['Middle East', 'Coronavirus pandemic', 'Europe', 'United States', 'Health'], 'default': [193, 116, 90, 67, 63]}
您可以创建一个 function merge
,它可以采用多个字典,然后合并这些字典
def merge(*dicts):
res = {}
for d in dicts:
for key in d.keys():
if key in res:
res[key].append(d[key])
else:
res[key] = []
res[key].append(d[key])
return res
a = {'labels': 'Middle East', 'default': 193}
b = {'labels': 'Coronavirus pandemic', 'default': 116}
c = {'labels': 'Europe', 'default': 90}
d = {'labels': 'United States', 'default': 67}
e = {'labels': 'Health', 'default': 63}
c = merge(a, b, c, d, e)
print(c)
output:
{'labels': ['Middle East', 'Coronavirus pandemic', 'Europe', 'United States', 'Health'], 'default': [193, 116, 90, 67, 63]}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.