Python 在字典中找到共同项

Python 在字典中找到共同项

字典 是Python中提供的一种无序数据结构,用于以键值对的形式存储数据。在其他编程语言中,它也被称为 关联数组哈希映射 。字典使用花括号 {} 表示,键和值之间使用冒号 : 分隔。字典中的键是唯一的,值可以重复。我们将使用 来访问字典的元素。

示例

以下是使用Python中的 dic() 方法和 花括号{} 创建字典的示例。

# creating dictionary using dict() method:
l = [('name', 'John'), ('age', 25), ('city', 'New York')]
dic = dict(l)
print("The dictionary created using dict() method",dic)
# creating dictionary using {}:
dic = {'name' : 'John', 'age' : 25, 'city' :'New York'}
print("The dictionary created using {}",dic)

输出

The dictionary created using dict() method {'name': 'John', 'age': 25, 'city': 'New York'}
The dictionary created using {} {'name': 'John', 'age': 25, 'city': 'New York'}

有多种方法可以找到 Python 字典中的公共项。让我们详细看一下每种方法。

使用集合交集

一个简单的方法是将字典的键转换为集合,然后使用集合交集操作符 & 来找到公共键。

示例

在这个示例中,我们首先使用 set(dict1.keys())set(dict2.keys())dict1dict2 的键转换为集合。然后,集合交集操作符 & 执行集合交集,得到一个公共键的集合。最后,通过遍历公共键并从 dict1 中获取相应的值,我们创建一个新的字典 common_items。

dict1 = {'a': 1, 'b': 2, 'c': 3}
dict2 = {'b': 20, 'c': 30, 'd': 40}
common_keys = set(dict1.keys()) & set(dict2.keys())
common_items = {key: dict1[key] for key in common_keys}
print("The common items in the dictionaries dict1,dict2:",common_items)

输出

The common items in the dictionaries dict1,dict2: {'c': 3, 'b': 2}

使用字典推导式

方法是使用字典推导式直接创建一个仅包含共同键值对的新字典。

示例

在这种方法中,我们使用for key in dict1来迭代dict1的键,然后对于每个键,我们使用if key in dict2的条件来检查它是否存在于dict2中。如果条件为true,则将键值对包含在common_items字典中。

dict1 = {'a': 1, 'b': 2, 'c': 3}
dict2 = {'b': 20, 'c': 30, 'd': 40}
common_items = {key: dict1[key] for key in dict1 if key in dict2}
print("The common items in the dictionaries dict1,dict2:",common_items)

输出

The common items in the dictionaries dict1,dict2: {'b': 2, 'c': 3}

使用items()方法

items()方法返回一个包含字典的键值对的视图对象。我们可以使用此方法来遍历这些键值对并过滤出共同的项。

示例

在这种方法中,我们使用items()方法来遍历dict1的键值对,使用for key, value in dict1.items()。然后,我们检查键是否存在于dict2中,并且两个字典中对应的值是否相同。如果满足这些条件,我们将包含该键值对的common_items字典中。

dict1 = {'a': 1, 'b': 2, 'c': 3}
dict2 = {'b': 20, 'c': 30, 'd': 40}
common_items = {key: value for key, value in dict1.items() if key in dict2 and dict2[key] == value}
print("The common items in the dictionaries dict1,dict2:",common_items)

输出

The common items in the dictionaries dict1,dict2: {}

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程