Python 寻找两个key共同的value
时间: 2023-09-27 12:06:56 浏览: 39
可以使用循环遍历字典的键值对,判断是否有两个键对应的值相等。示例代码如下:
```python
dict1 = {"A": 1, "B": 2, "C": 3}
dict2 = {"D": 3, "E": 2, "F": 5}
# 遍历 dict1 和 dict2,找到共同的值
for key1, value1 in dict1.items():
for key2, value2 in dict2.items():
if value1 == value2:
print(f"{key1} 和 {key2} 共享值 {value1}")
```
输出为:
```
B 和 E 共享值 2
C 和 D 共享值 3
```
这个例子中,字典 `dict1` 和 `dict2` 分别表示两个不同的字典。通过两个嵌套的循环,遍历字典的键值对,判断是否有两个键对应的值相等。如果相等,则输出这两个键以及它们共享的值。
相关问题
Python在一个列表里寻找两个key共同的value
可以使用一个字典来解决这个问题,具体的方法是:
1. 遍历列表中的每一个字典,将字典中的key-value对存入一个新的字典中;
2. 对于每一个新的key,如果该key已经存在于新字典中,则将当前字典的value添加到该key对应的列表中,否则就新建一个key-value对,将当前字典的value作为列表中的第一个元素;
3. 最后,遍历新字典中的每一个key-value对,如果列表中元素的数量大于1,则说明该key在两个或多个字典中都存在,共同的value就是该列表中的元素。
下面是一个示例代码,假设我们要在下面这个列表中寻找key1和key2共同的value:
```
data = [
{'key1': 'value1', 'key2': 'value2', 'key3': 'value3'},
{'key1': 'value4', 'key2': 'value2', 'key3': 'value6'},
{'key1': 'value7', 'key2': 'value8', 'key3': 'value9'}
]
```
代码如下:
```python
from collections import defaultdict
def find_common_value(data, key1, key2):
# 新建一个字典
new_dict = defaultdict(list)
# 遍历每一个字典
for d in data:
# 将字典中的key-value对存入新字典中
new_dict[d[key1]].append(d[key2])
# 遍历新字典,找到共同的value
common_values = []
for key, values in new_dict.items():
if len(values) > 1:
common_values.extend(values)
return common_values
common_values = find_common_value(data, 'key1', 'key2')
print(common_values)
```
输出结果:
```
['value2']
```
可以看到,key1和key2共同的value是'value2'。
python字典追加多个key value值
可以使用字典的update()方法来追加多个键值对,如下所示:
```
my_dict = {'key1': 'value1'}
new_dict = {'key2': 'value2', 'key3': 'value3'}
my_dict.update(new_dict)
```
在上面的例子中,我们首先创建了一个字典`my_dict`,其中包含键`key1`和对应的值`value1`。然后,我们创建了另一个字典`new_dict`,其中包含两个键值对`key2: value2`和`key3: value3`。最后,我们使用`update()`方法将新字典的键值对添加到原始字典中。现在,`my_dict`包含三个键值对:`key1: value1`、`key2: value2`和`key3: value3`。