我正在尝试使用一个具有多个值的键将字典映射到python中。这就是我得到的。
import json
list =['abe','matt','roscoe']
key="name"
nodes={}
nodes.setdefault(key,list)
['abe', 'matt', 'roscoe']
json_nodes =json.dumps(nodes)
json_nodes
'{"name": ["abe", "matt", "roscoe"]}'
但是我希望有一个类似于此的json文件 [ { “名字”:“abe” }, { “名字”:“亚光” }, { “名字”:“roscoe” } ]
任何建议都将不胜感激。提前致谢。
答案 0 :(得分:3)
您有一个名单列表,例如
>>> names = ['abe', 'matt', 'roscoe']
您只需要迭代名称,并在每次迭代时创建一个新字典以获取字典列表,例如
>>> json.dumps([{"name": name} for name in names])
[{"name": "abe"}, {"name": "matt"}, {"name": "roscoe"}]
下面,
[{"name": name} for name in names]
称为列表理解。生成新列表是一种方便的技术。在我们的示例中,我们使用names
迭代for name in names
。在每次迭代中,name
将具有与迭代相对应的当前名称,并且我们使用{"name": name}
创建新字典。