Python 程序从字典值进行设置
在 Python 中,字典是一种称为关联数组的数据结构的实现。字典由一组键值对组成。每个键值组合对应一个键及其对应的值。
在本文中,我们将学习如何在 Python 中将字典值转换为集合。
使用的方法
以下是完成此任务的各种方法:
使用生成器表达式和 {}
使用 values() 和 set() 函数
使用 Counter() 函数
示例
假设我们已经获取了一个输入字典。我们现在将提取字典中的所有值,然后将这些值转换为一个集合。
输入
inputDict = {'hello': 5, 'tutorialspoint': 10, 'users': 15, 'python': 5}
输出
{10, 5, 15}
在上面的例子中,输入字典(5, 10, 15, 5)的值被提取并转换为一个集合。转换为集合时,所有重复项都会被删除。
因此,删除所有重复值后,输出为 {10, 5, 15>。
使用生成器表达式和 {}
在这里,我们使用生成器表达式来获取所有值,而 {} 运算符负责删除重复项并转换为集合。
算法(步骤)
以下是执行所需任务需要遵循的算法/步骤 –。
创建一个变量来存储输入字典。
打印输入字典。
遍历输入字典并使用生成器表达式和 {} 将输入字典的值转换为集合。
将输入字典的值转换为集合后,打印结果集。
示例
以下程序使用生成器表达式和 {} 将输入字典的值转换为集合后返回一个集合 –
# 输入字典 inputDict = {'hello': 5, 'tutorialspoint': 10, 'users': 15, 'python': 5} # 打印输入字典 print("输入字典:\n", inputDict) # 使用 {} 运算符转换为集合 # 将输入字典的值转换为集合 resultantSet = {inputDict[i] for i in inputDict} # 将输入字典的值转换为集合后打印结果集 print("结果集包含输入字典的值:", resultantSet)
输出
执行时,上述程序将生成以下输出 –
输入字典: {'hello': 5, 'tutorialspoint': 10, 'users': 15,'python':5} 结果集,输入字典的值:{10, 5, 15}
使用 values() 和 set() 函数
在此方法中,我们将使用 python 的 values() 和 set() 函数组合从字典值中转换集合。这里 set() 函数创建一个集合对象。集合列表将以随机顺序出现,因为项目没有排序。它会删除所有重复项。dict.values() 函数提供了一个视图对象,该对象按插入顺序显示字典中所有值的列表。
算法(步骤)
以下是执行所需任务所要遵循的算法/步骤 -。
使用 values() 函数获取输入字典的所有值,并使用 set() 函数将它们转换为集合。set() 函数还会删除所有重复项。
将输入字典的值转换为集合后,打印结果集合。
示例
以下程序在使用 values() 和 set() 函数将输入字典的值转换为集合后返回一个集合 –
# 输入字典 inputDict = {'hello': 5, 'tutorialspoint': 10, 'users': 15, 'python': 5} # 打印输入字典 print("输入字典:\n", inputDict) # 获取输入字典的值并将它们转换为集合 # set() 函数还会删除所有重复项 resultantSet = set(inputDict.values()) # 将输入字典的值转换为集合后打印结果集 print("结果集包含输入字典的值:", resultantSet)
输出
执行时,上述程序将生成以下输出 –
输入字典: {'hello': 5, 'tutorialspoint': 10, 'users': 15,'python':5} 结果集包含输入字典的值:{10, 5, 15}
使用 Counter() 函数
在此方法中,我们将使用 Python 中的 counter() 函数将集合从字典值转换。这里,Counter() 函数是一个计算可哈希对象的子类。它在调用时隐式创建一个可迭代对象的哈希表。Counter() 函数用于获取输入字典值的频率。
算法(步骤)
以下是执行所需任务所要遵循的算法/步骤 –。
使用 import 关键字从 collections 模块导入 Counter 函数。
创建一个变量来存储输入字典。
打印输入字典。
使用 values() 函数获取输入字典的值,并使用 Counter() 函数获取这些值的频率作为键值对。
使用 keys() 函数从上述值的频率中获取键,并使用 list() 函数将它们转换为列表(将序列/可迭代对象转换为列表)。
使用 set() 函数将结果值列表转换为集合。
转换后打印结果集输入字典的值进行设置。
示例
以下程序在使用 Counter() 函数将输入字典的值转换为设置后返回一个集合 –
# 从 collections 模块导入 Counter from collections import Counter # 输入字典 inputDict = {'hello': 5, 'tutorialspoint': 10, 'users': 15, 'python': 5} # 打印输入字典 print("输入字典:\n", inputDict) # 获取输入字典值的频率作为键值对 valuesFrequency = Counter(inputDict.values()) # 从上述值的频率中获取键并将其转换为列表 resultantList = list(valuesFrequency.keys()) # 将结果值列表转换为集合 resultantSet = set(resultantList) # 将输入字典值转换为集合后打印结果集 print("包含输入字典值的结果集:", resultantSet)
输出
执行时,上述程序将生成以下输出 –
输入字典: {'hello': 5, 'tutorialspoint': 10, 'users': 15, 'python': 5} 包含输入字典值的结果集:{10, 5, 15}
结论
本文教我们三种不同的方法来构建字典值集。我们学习了如何使用内置方法(如 {} 运算符和 set() 函数)将数据转换为集合。我们还学习了如何利用 Counter() 函数(在本例中执行与 set() 相同的功能)从可迭代对象中获取所有唯一值。