1.声明:
集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
创建格式:
parame = {value01,value02,...} #可以声明不同类型元素 或者 set(value) #一般为字符串、列表和元组,不能为数字。如果是字符串就表示只能声明同种类型元素
2. '''集合中增加元素,有两种方法 '''
# s.add(x) 方法,一次只能增加一个
set_A.add(1) set_A.add(2) set_A.add('a') set_A.add('b') set_A.add("我在学python")
# s.update(x),参数x可以是列表,元组,字典等,可以一次增加多个
set_A.update([3,4]) #结果为 {1, 2, 'b', 3, 4, '我在学python', 'a'} set_A.update((5,6,"car")) #结果为{1, 2, 'b', 3, 4, 5, 6, 'car', '我在学python', 'a'} set_A.update({"A6","A4L"}) #结果为{1, 2, 'b', 3, 4, 5, 6, 'car', 'A4L', '我在学python', 'a', 'A6'}
3. '''集合中删除元素,有三种方法'''
# s.remove(x)
set_A.remove(5)
# s.discard(x),如果元素不存在,不会发生错误
set_A.discard("A6")
# s.pop(),随机删除某一元素
set_A.pop()
4. '''集合中元素无序,无法修改元素'''
5. '''集合中元素无序,无法通过下标查找'''
6. '''计算集合中元素的个数'''
len(set_A)
7. '''清空集合,有两种方法'''
# s.clear(),清空集合中的所有元素
set_A.clear()
# del s,把集合s删除
del set_A
8. '''遍历集合中元素'''
for i in set_A: print(i,end=",") #结果:2,3,4,b,6,car,A4L,我在学python,a,
9. 集合间的运算
a = set('abracadabra') b = set('alacazam') print(a - b) # 在集合a中包含却不在集合b中,等同于 a.difference(b) print(a | b) # 在集合a和集合b中都包含的元素,等同于 a.union(b) print(a & b) # 集合a和b中都包含了的元素,等同于 a.intersection(b) print(a ^ b) # 不同时包含于a和b的元素,等同于 a.symmetric_difference(b) a.difference_update(b) # 会改变集合a中的元素,将 a - b 的值赋值给集合a a.intersection_update(b) # 会改变集合a中的元素,将 a & b 的值赋值给集合a a.symmetric_difference_update(b) # 会改变集合a中的元素,将 a ^ b 的值赋值给集合a print(a.isdisjoint(b)) # 判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。