如何在 Python 中创建集合字典?
在本文中,我们将学习如何在 Python 中创建集合字典。
使用的方法
以下是用于完成此任务的各种方法 -
使用朴素方法
使用 defaultdict() 方法
使用 setdefault() 方法
方法 1:使用朴素方法
在此方法中,我们通过将集合作为值传递给键来创建集合字典。
语法
{ 'Key': Set 1, 'Key':Set 2,…………..,'Key': Set n}
算法(步骤)
以下是执行所需任务所要遵循的算法/步骤。 −
创建一个变量,将包含值的字典存储为没有重复元素的集合(即集合字典)。
打印输入的集合字典。
示例
以下程序使用朴素方法在 python 中创建一个集合字典(没有重复项)−
# 创建一个包含值的字典作为集合 # 没有重复元素 #(集合字典) inputDict = {'Employ ID': {10, 11, 12, 14, 15}, 'Employ Age': {25, 30, 40, 35, 28}} # 打印输入的字典集合 print(inputDict)
输出
执行时,上述程序将生成以下输出 -
{'Employ ID': {10, 11, 12, 14, 15}, 'Employ Age': {35, 40, 25, 28, 30}}
创建具有重复项的集合
一般来说,python 中的 set 不允许 重复,即删除所有重复的元素。
示例
以下示例显示 python 集合不允许重复。
以下程序使用朴素方法在 python 中创建一个集合字典(包含重复项)-
# 创建一个包含值的字典作为集合 # 包含重复元素 # 集合不允许重复 inputDict = {'Employ ID': {10, 11, 12, 13, 13, 14, 15, 10, 12, 11}, 'Employ Age': {25, 30, 30, 40, 25, 35, 40, 28, 33, 25}} # 打印输入字典 print(inputDict)
输出
执行时,上述程序将生成以下输出 -
{'Employ ID': {10, 11, 12, 13, 14, 15}, 'Employ Age': {33, 35, 40, 25, 28, 30}}
在上面的例子中,我们可以观察到所有重复项都被删除,并且只打印了唯一的元素。因此证明了python集合删除不允许重复。
方法2:使用defaultdict()方法
在此方法中,将创建默认集并将键值对传递给它。
语法
defaultdict(set)
传递带有键和值的字典-
dictionary["key"] |= {'value1', 'value2′, ……………,'value n'}
这里,
dictionary - 输入字典
key - 字典的键
value - 传递为的字典的值设置。
算法(步骤)
以下是执行所需任务需要遵循的算法/步骤。 −
使用 import 关键字从 collections 模块导入 defaultdict。
使用 defaultdict() 方法,通过将传递的集合作为参数来创建空字典集。
使用 [] 运算符为字典提供 键值对。
打印创建的集合字典。
示例
以下程序使用 defaultdict() 函数在 python 中创建集合字典 −
# 从 collections 模块导入 defaultdict from collections import defaultdict # 使用 defaultdict() 方法通过将集合作为参数传递给来创建空字典集 # it dictionary = defaultdict(set) # 给出字典的第一个键值对 dictionary["Employ ID"] |= {10, 11, 12, 14, 15} # 给出字典的第二个键值对 dictionary["Employ Age"] |= {25, 30, 40, 35, 28} # 打印创建的集合字典 print(dictionary)
输出
执行时,上述程序将生成以下输出 -
defaultdict(<class 'set'>, {'Employ ID': {10, 11, 12, 14, 15}, 'Employ Age': {35, 40, 25, 28, 30}})
方法 3:使用 setdefault() 方法
setdefault() 方法返回字典中键的值。如果没有,则将键和值插入字典中。
语法
dict.setdefault(key, default_value)
此处,
key − 这是必须在字典中搜索的键。
default_value − 这是特定键的值
算法(步骤)
以下是执行所需任务所要遵循的算法/步骤。 −
创建一个变量,将包含值的输入字典存储为一个没有重复元素的集合(即集合字典)。
使用 setdefault() 函数,通过将 'Employ ID' 作为参数传递给它,将 'Employ ID' 的值作为输入字典的集合来访问。
使用 setdefault() 函数,通过将 'Employ Age' 作为参数传递给它,将 'Employ Age' 的值作为输入字典的集合来访问。
使用 setdefault() 方法创建一个新的键值对,并将值设置为集合。
添加第三个后打印结果字典集合。
示例
以下程序创建一个集合字典并使用 setdefault() 方法访问其元素 −
# 创建一个包含集合值的字典 # (集合字典) inputDict = {'Employ ID': {10, 11, 12, 14, 15, 11}, 'Employ Age': {25, 30, 40, 35, 28, 28}} # 将字典中"Employ ID"的值作为集合访问 # 使用 setdefault() 函数 print("访问雇员 ID:", inputDict.setdefault('Employ ID')) # 将字典中"Employ Age"的值作为集合访问 # 使用 setdefault() function print("访问雇员年龄:", inputDict.setdefault('雇员年龄')) # 使用 setdefault 方法为字典设置第三组值 # 员工姓名 inputDict = inputDict.setdefault( '雇员姓名', {'rohit', 'virat', 'pandya', 'smith', 'warner'}) # 添加第三组后打印字典 print(inputDict)
输出
执行时,上述程序将生成以下输出 -
访问雇员 ID:{10, 11, 12, 14, 15} 访问雇员年龄:{35, 40, 25, 28, 30} {'pandya', 'rohit', 'smith', 'virat', 'warner'}
结论
在本文中,我们学习了如何使用 3 种不同的方法在 Python 中创建集合字典。这对于删除某些键的重复数据是必要的,例如仅保留唯一的卷号、唯一的工作 ID 等。我们还学习了如何使用 setdefault() 函数来检索集合字典。