Lid*_*iro 0 python dictionary list
我正在尝试遍历以下字典列表以生成输出:
authors = [
{'id': 1, 'name': 'Grace Hopper'},
{'id': 2, 'name': 'Karl Marx'}
]
Run Code Online (Sandbox Code Playgroud)
预期产量:
'Grace Hopper, Karl Marx'
Run Code Online (Sandbox Code Playgroud)
我的代码缺少一些东西:
for item in authors:
for author in item.values():
print(author)
Run Code Online (Sandbox Code Playgroud)
输出:
1
Grace Hopper
2
Karl Marx
Run Code Online (Sandbox Code Playgroud)
如何使用简单的for循环解决它?如何使用列表压缩?
你可以使用str.join:
d = [{'id': 1, 'name': 'Grace Hopper'}, {'id': 2, 'name': 'Karl Marx'}]
new_d = ', '.join([i['name'] for i in d])
Run Code Online (Sandbox Code Playgroud)
输出:
'Grace Hopper, Karl Marx'
Run Code Online (Sandbox Code Playgroud)