我有名单列表,我正在尝试将它们添加到名为'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'}]
那么,如何添加整个名称(不仅仅是第一个字母)?
答案 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]