如何在python dict中使用一个键添加多个贵重物品?

时间:2014-03-11 18:32:47

标签: python python-3.x dictionary zip

我有名单列表,我正在尝试将它们添加到名为'name'的键下。

list_of_names = ['john', 'lisa', 'david', 'frans']
key = ['name']

使用:

namelist = [dict(zip(key, i)) for i in list_of_names]

代码返回:

[{'name': 'j'}, {'name': 'l'}, {'name': 'd'}, {'name': 'f'}] 

那么,如何添加整个名称(不仅仅是第一个字母)?

1 个答案:

答案 0 :(得分:0)

不要在这里使用zip();只需使用dict文字:

key = 'name'
namelist = [{key: i} for i in list_of_names]

或只是使用:

namelist = [{'name': i} for i in list_of_names]

zip()遍历两个输入以配对每个元素;将['name']john配对,只会导致一个配对,名称中的第一个字符。如果您 使用zip(),那么至少将i放入列表中:

namelist = [dict(zip(key, [i])) for i in list_of_names]