python - 从字典中获取 key_tags?
问题描述
我有以下字典,我想要每个城市的所有键(即它属于哪个标签,例如肾上腺素或空气等)。
dictionary = {u'adrenaline': {u'estimated_total': 234,
u'more': True,
u'results': [{u'adrenaline_score': 2.11474252688113, u'name': u'Rome'},
{u'adrenaline_score': 1.94859310493828, u'name': u'Budapest'},
{u'adrenaline_score': 2.65914794847249, u'name': u'Ubud'},
{u'adrenaline_score': 1.94859310493828, u'name': u'Calgary'},
{u'adrenaline_score': 3.0, u'name': u'Canc\xfan'}]},
u'air': {u'estimated_total': 234,
u'more': True,
u'results': [{u'air_score': 1.50402325242855, u'name': u'Paris'},
{u'air_score': 1.50402325242855, u'name': u'Rome'},
{u'air_score': 1.50402325242855, u'name': u'New York City'},
{u'air_score': 1.50402325242855, u'name': u'Abu Dhabi'},
{u'air_score': 1.50402325242855, u'name': u'Key West'},
{u'air_score': 1.50402325242855, u'name': u'Salt Lake City'}]}
与城市相关的标签(键)和分数。
输出:
{'Rome': {'adrenaline': 2.11474252688113, 'air': 1.50402325242855},
'Budapest': {'adrenaline': 1.94859310493828},
'Ubud': {'adrenaline': 2.65914794847249},
'Calgary': {'adrenaline': 1.94859310493828}....}
解决方案
将您的 dict 重命名d
为不使用 reserved 关键字dict
,您可以执行以下操作(根据您想要的输出进行调整,尚不清楚):
In [1]:
result = {}
for k, v in d.items():
for score_row in v['results']:
city = score_row['name']
if not city in result.keys():
result[city] = {}
result[city][k] = score_row['{}_score'.format(k)]
Out[1]:
{'Rome': {'adrenaline': 2.11474252688113, 'air': 1.50402325242855},
'Budapest': {'adrenaline': 1.94859310493828},
'Ubud': {'adrenaline': 2.65914794847249},
'Calgary': {'adrenaline': 1.94859310493828},
'Cancún': {'adrenaline': 3.0},
'Paris': {'air': 1.50402325242855},
'New York City': {'air': 1.50402325242855},
'Abu Dhabi': {'air': 1.50402325242855},
'Key West': {'air': 1.50402325242855},
'Salt Lake City': {'air': 1.50402325242855}}
推荐阅读
- arrays - 如何选择除索引列表之外的矩阵行
- python - flask restplus 将文件保存到来自 API 的数据库中
- git - 将新文件推送到现有的 git 存储库
- jquery - 有没有人用 Materialize Framework 激活 2 个或多个下拉菜单的解决方法?
- ios - 如何从钥匙串中获取 NEPacketTunnelProvider Networkextension 的身份?
- angular - DOM 悬停时有规律的可观察发射
- python-3.x - 在条件下计算列中的值之间说我只需要计算特定值并使用 python pandas 将它们按另一列分组
- c# - 使用 c# / 实体框架将查询从一个实体重定向到另一个实体
- reactjs - 如何在本机反应中实现选择器列表与父值和子值
- html - 删除空白选项但不将初始选项设置为第一个值