6.4 集合的概念
• 集合是由一组无序排列且不重复的元素组成,具体示例如下:
set1 = {
1, 2, 'a'}
• 集合使用大括号表示,元素类型可以是数字类型、字符串、元组,但不可以是列表、字典,具体示例如下:
set2 = {
2 , ['a', 1]} # 错误,元素包含列表
set3 = {
2 , {
'a':1}} # 错误,元素包含字典
set3 = {
2 , ('a', 1)} # 正确,元素包含元组
• 使用大括号创建的集合属于可变集合,即可以添加或删除元素。此外,还存在一种不可变集合,即不允许添加或删除元素。
• 接下来演示创建这两种集合的方法,如例所示。
1 set1 = set('xiaoqian') # 通过 set()创建可变集合
2 print(type(set1), set1)
3 set2 = set(('xiaoqian', 'xiaofeng'))
4 set3 = set(['xiaoqian', 'xiaofeng'])
5 print(set2, set3)
6 fset1 = frozenset('xiaofeng') # 通过 frozenset()创建不可变集合
7 print(type(fset1))
8 print(fset1)
• 集合的一个重要用途是将一些数据结构中的重复元素去除,如例所示。
1 list1 = [1, 2, 3, 4, 3, 2, 1]
2 set1 = set(list1) # 将列表转换为集合并去重
3 list2 = list(set1) # 将集合转换为列表
4 print