我正在尝试遍历以下字典列表以生成输出:
authors = [
{'id': 1, 'name': 'Grace Hopper'},
{'id': 2, 'name': 'Karl Marx'}
]
预期输出:
'Grace Hopper, Karl Marx'
我的代码缺少一些东西:
for item in authors:
for author in item.values():
print(author)
输出:
1
Grace Hopper
2
Karl Marx
如何使用一个简单的for
循环来解决这个问题?如何使用列表压缩来完成此操作?
发布于 2018-05-25 04:36:00
您可以使用str.join
d = [{'id': 1, 'name': 'Grace Hopper'}, {'id': 2, 'name': 'Karl Marx'}]
new_d = ', '.join([i['name'] for i in d])
输出:
'Grace Hopper, Karl Marx'
发布于 2018-05-25 05:12:08
这里有一种方法:
from operator import itemgetter
authors = [
{'id': 1, 'name': 'Grace Hopper'},
{'id': 2, 'name': 'Karl Marx'}
]
print(', '.join(map(itemgetter('name'), authors))) # -> Grace Hopper, Karl Marx
https://stackoverflow.com/questions/50517752
复制相似问题