创建一个列表,然后将项目用作字典中的值

时间:2017-08-16 16:52:33

标签: python dictionary

我在Python中创建了一个带循环的列表,我希望将此列表中的每个项目指定为值。听起来很简单,但我需要创建与mu列表中完全相同数量的词典。

arr_temp = []
for i in range(random.randrange(1,len(findings_list))):
    rand_item = random.choice(findings_list)
    arr_temp.append(rand_item)
# ['Lymph nodes', 'Calcifications US']

执行此操作后,我需要创建2个字典,其名称为“name”和列表项的值, 所以在这种情况下我希望有像

这样的东西
dict1 = {"name": 'Lymph nodes'}
dict2 = {"name": 'Calcifications US'}

另外,如果你可以建议任何有效的方法来添加字典数组到dict键,所以它看起来像

...findings: [{"name": 'Lymph nodes'}, 
              {"name": 'Calcifications US'}]

我将非常感激。谢谢!

3 个答案:

答案 0 :(得分:2)

my_list = ['Lymph nodes', 'Calcifications US']
[{'name': v} for v in my_list]
[{'name': 'Lymph nodes'}, {'name': 'Calcifications US'}]

答案 1 :(得分:2)

{'findings': [{"name":x} for x in arr_tmp]}

答案 2 :(得分:0)

String = ""

for i in range(1, len(arr_temp) + 1):
    String += "dict" + str(i) + " = " + {/"name/": '" + str(arr_temp[i - 1]) + "'}\n'

exec(String)

知道它不赞成使用execeval,但我只是在回答这个问题。如果OP想要使用它,那就是她的选择。