交叉使用两个字典
字典是一个无序的数据集合,其形式为键值对,由大括号内的逗号分隔。字典是由键来索引的。当键已知时,它们通常被优化为检索值。值(定义)被映射到一个特定的键(词)上,与现实世界中的字典类似。
现在我们的任务是 用 两个字典的键来交叉。我们可以通过两种方式实现这一目标
- 字典的理解
- &运算符
使用字典理解法。
在我们继续学习这个方法之前,请参考这篇关于字典理解的文章,以便更好地理解。
docs.google.com/document/d/… (将替换为i2tutorials网站的文章链接)
现在,让我们以两个 字典x 和 y为例 , 其键和值如下。

我们现在取一个迭代器 i ,它是 x 的 键 , 通过运行 for循环 检查 x 中的 i(key) 是否 也 存在于 y 中 。
{ i : x[i] for i in x if i in y }
如果找到了,共同的 键 和它的 值 就会被推到一个名为 z 的新字典里面 。
z = { i : x[i] for i in x if i in y }

我们可以看到 ,当我们试图打印z时, 公共键:值对 {'a': 'one'}已经被打印出来 。
使用&(AND)操作符。
我们现在尝试使用 items() 函数 将两个字典转换成一个列表 ,并使用 &(AND)操作符将 它们联系起来 ,我们将考虑同样的例子,即两个字典 x 和 y。
x.items() & y.items()
之后,我们使用 dict() 函数将常见的键值对转换为一个字典,并将它们存储在 z中。
z = dict( x.items() & y.items() )

The postIntersecting two dictionaryappeared first oni2tutorials.