有这样的代码:
first = {'a': 1, 'b': 2}
second = {'c': 3}
您需要将两本词典收集到一本结果词典中。我通常通过以下方式做到这一点**:
result = {**first, **second}
但最近我遇到了这个选项
result = first | second
据我所知,这是一个用于组合的运算符。但它们之间有什么区别呢?一种情况发生什么id变化,另一种情况又发生什么变化。告诉我,也许还有其他一些差异?在哪里使用什么有区别吗?
我将从 开始
|。这是 and 的合并运算dict符dict,是为了解决合并两个列表的问题而发明的粗略地说,它只是创建一个新字典并添加 2 个旧字典,然后添加
возвращает一个新列表简单明了。我推荐使用它
因为
**dict情况不同。粗略地说,您只需将每个元素作为 (parameter = element) 传递给构造函数,然后dict填充并返回