将一个元组列表添加到现有字典中。

5

我是一名有用的助手,可以为您进行翻译。

我有一个现有的字典,我想将一个元组列表添加到这个字典中。

现有字典结构:

myD = {'key1': 123 , 'key2': 456}

元组结构列表:

myL = [('fkey1',321),('fkey2',432),('fkey3',543)]

在添加元组列表后,预期的字典

myD = {'key1': 123 ,'key2': 456 ,'fkey': 321 ,'fkey2': 432 ,'fkey3': 543}

我该如何在Python中实现这个功能?


可能是元组列表转字典的重复问题 - Anand Tripathi
4个回答

11

只需使用dict.update即可。

>>> myD = {'key1': 123 , 'key2': 456}
>>> myL = [('fkey1',321),('fkey2',432),('fkey3',543)]
>>> 
>>> myD.update(myL)
>>> 
>>> myD
{'key2': 456, 'key1': 123, 'fkey1': 321, 'fkey2': 432, 'fkey3': 543}

4

使用简单的for循环语句

myD = {'key1': 123 , 'key2': 456}

myL = [('fkey1',321),('fkey2',432),('fkey3',543)]

for k, v in myL:
    myD[k] = v

print(myD)

或者使用update
myD.update(myL)                                                                                                                                                                                              

print(myD)

输出

{'key1': 123, 'key2': 456, 'fkey1': 321, 'fkey2': 432, 'fkey3': 543}

4

使用 dict.update 方法

示例:

myD = {'key1': 123 , 'key2': 456}
myL = [('fkey1',321),('fkey2',432),('fkey3',543)]
myD.update(myL)
print(myD)

输出:

{'key2': 456, 'key1': 123, 'fkey1': 321, 'fkey2': 432, 'fkey3': 543}

3
无需将myL转换为字典:myD.update(myL)就可以正常工作。 - Duncan
抱歉,那是个打字错误。 - Rakesh

0

字典解包:

>>> >>> myD = {'key1': 123 , 'key2': 456}
>>> myL = [('fkey1',321),('fkey2',432),('fkey3',543)]
>>> {**myD, **dict(myL)}
{'key1': 123, 'key2': 456, 'fkey1': 321, 'fkey2': 432, 'fkey3': 543}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接