将dict转换为dict python列表

2024-10-06 11:23:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我想转换以下词典:

{'Stockholm': ['235', '35'], 'Helsinki': ['285', '15'], 
'Copenhagen': ['180', '60'], 'Berlin': ['185', '85'], 
'Prague': ['190', '115'], 'Warsaw': ['260', '105'], 
'Moscow': ['370', '80'], 'Sofia': ['275', '170'], 
'Ankara': ['340', '190'], 'Athens': ['285', '205']}

分为:

[{'Stockholm':['235', '35']},{'Helsinki': ['285', '15']},
{'Copenhagen':   ['180', '60']},...,{'Athens': ['285', '205']}] 

我不知道如何转换它。你知道吗


Tags: sofia词典berlinstockholmhelsinkiathensmoscowwarsaw
2条回答

简单的方法是:

d = {'Stockholm': ['235', '35'], 'Helsinki': ['285', '15'], 
'Copenhagen': ['180', '60'], 'Berlin': ['185', '85'], 
'Prague': ['190', '115'], 'Warsaw': ['260', '105'], 
'Moscow': ['370', '80'], 'Sofia': ['275', '170'], 
'Ankara': ['340', '190'], 'Athens': ['285', '205']}
d = [d]

您可以对dict.items()对使用列表理解:

[{k: v} for k, v in d.items()]  # where d is your dictionary

这将为每个键值对创建一个单独的字典。你知道吗

您不能依赖输入字典中的任何顺序,因此输出顺序将取决于字典的插入和删除历史(除非您使用的是python3.6或更高版本)。你知道吗

演示:

>>> d = {'Stockholm': ['235', '35'], 'Helsinki': ['285', '15'],
... 'Copenhagen': ['180', '60'], 'Berlin': ['185', '85'],
... 'Prague': ['190', '115'], 'Warsaw': ['260', '105'],
... 'Moscow': ['370', '80'], 'Sofia': ['275', '170'],
... 'Ankara': ['340', '190'], 'Athens': ['285', '205']}
>>> [{k: v} for k, v in d.items()]
[{'Stockholm': ['235', '35']}, {'Helsinki': ['285', '15']}, {'Copenhagen': ['180', '60']}, {'Berlin': ['185', '85']}, {'Prague': ['190', '115']}, {'Warsaw': ['260', '105']}, {'Moscow': ['370', '80']}, {'Sofia': ['275', '170']}, {'Ankara': ['340', '190']}, {'Athens': ['285', '205']}]

相关问题 更多 >