python从值创建新的dict键

时间:2012-05-31 11:45:59

标签: python dictionary

我有一系列哈希,如:

detail = [{'name': 'Adam'}, {'name': 'Jackie'}]

现在我要做的是创建一个新的字典,如:

{'name' : 'Sandra'}

我做的是:

for i in detail:
    for key_in_i in i:
        dict(key_in_i = 'Sandra')

我想得到的是{'Name': 'Sandra'}。但如果我这样做,我会收到{'key_in_u': 'Sandra'},因为我已将密钥设置为key_in_i。我不知道如何从for循环到新dict访问key的值。如果它是在Ruby中我会完成#{key_in_i}并且它会给我所需的值。我也尝试了new_dict = dict("%s" %key = i[key]),但它给了我错误key cannot be the expression。如果有人能帮我解决这个问题,我将感激不尽!

1 个答案:

答案 0 :(得分:4)

在这种特殊情况下最简单的解决方案是

for i in detail:
    print dict.fromkeys(i, "Sandra")

您还可以使用字典文字:

for i in detail:
    for key_in_i in i:
        {key_in_i: "Sandra"}

(由于您的示例代码实际上什么也没做,所以不确定您实际想要实现的目标。)