Python为字典“扩展”

2024-03-29 08:08:04 发布

您现在位置:Python中文网/ 问答频道 /正文

用另一本词典扩充词典的最佳方法是什么?例如:

>>> a = { "a" : 1, "b" : 2 }
>>> b = { "c" : 3, "d" : 4 }
>>> a
{'a': 1, 'b': 2}
>>> b
{'c': 3, 'd': 4}

我正在寻找任何操作来获得这个避免for循环:

{ "a" : 1, "b" : 2, "c" : 3, "d" : 4 }

我想做的事情是:

a.extend(b)  # This does not work

Tags: 方法fornotthis事情词典workextend
3条回答

一颗美丽的宝石在this closed question

“单行道”改变了两个输入指令

basket = dict(basket_one, **basket_two)

学习什么^{} (the ^{}) means here

如果发生冲突,来自basket_two的项将覆盖来自basket_one的项。作为一行代码,这是非常可读和透明的,我不后悔使用它任何时候,一个dict,这是一个混合了其他两个有用的(任何读者谁有困难理解它将实际上是非常好的服务方式,这促使他或她学习dict**的形式;-)。例如,使用如下:

x = mungesomedict(dict(adict, **anotherdict))

在我的代码中经常出现。

最初由Alex Martelli提交

注意:在Python 3中,只有basket 2中的每个键都是string时,这才有效。

您是否尝试过使用字典理解和字典映射:

c = {**a, **b}
# c = { "a" : 1, "b" : 2, "c" : 3, "d" : 4 }

相关问题 更多 >