【发布时间】:2011-02-04 21:20:00
【问题描述】:
如果我有两个字典我想在 Python 中组合,即
a = {'1': 1, '2': 2}
b = {'3': 3, '4': 4}
如果我对它们运行更新,它会重新排序列表:
a.update(b)
{'1': 1, '3': 3, '2': 2, '4': 4}
当我真正想要的是将“b”附加到“a”的末尾时:
{'1': 1, '2': 2, '3': 3, '4': 4}
有没有一种简单的方法可以将“b”附加到“a”的末尾,而不必像这样手动组合它们:
for key in b:
a[key]=b[key]
像 += 或 append() 这样的东西是理想的,但当然它们都不适用于字典。
【问题讨论】:
-
update()方法是“组合”字典的正确方法,所以也许你需要解释为什么你想要你认为你想要的......你真的有理由想要一本字典有一个特定的顺序,或者你只是对你看到的行为感到困惑,但组合字典确实适合你? -
现在很有意义。我在想字典有一个命令,其他人提到的不正确。
-
如果顺序对您很重要,您可以考虑使用元组列表而不是字典。否则,正如其他人提到的,总是有 OrderedDictionary。
标签: python dictionary