1.集合的创建
(1)强制类型转化–创建空集合
s1 = set([])
print(type(s1))
(2)集合里面的元素是不可重复的
s = {1,3,5,7}
print(s)
print(type(s))
(3)集合的应用–去重
li = [1,2,3,1,2,3]
print(list(set(li)))
2.集合的特性
s = {1,2.3,'hello'}
(1)成员操作符
print(1 in s) #输出:True
(2)for循环
for i in s:
print(i)
for i,v in enumerate(s): #enumerate()函数:枚举,列出数据和数据下标
print('index: %s,value: %s' %(i,v))
注意:
print(s[0]) #无序,不支持索引,也不支持切片
print(s * 3) #不支持重复
print(s + {4,5,6}) #不支持连接
3.集合的增加与删除
无序的数据类型,添加顺序和在集合中的存储顺序是不一样的
s = {3,37,26,84,24}
(1)增加
s.add(4) #增加一个元素
print(s)
s.update({5,6,7}) #增加一个集合
print(s)
(2)删除
s.pop() #删除一个元素(随机)
print(s)
s.remove(6) #删除指定元素
print(s)
4.集合的运算
s1 = {1,2,3,4}
s2 = {3,4,5,6}
(1)交集
print(s1.intersection(s2))
print(s1 & s2)
(2)并集
print(s1.union(s2))
print(s1 | s2)
(3)差集
print(s1.difference(s2)) #s1 - (s1 & s2)
print(s2.difference(s1)) #s2 - (s1 & s2)
5.集合关系的判断
(1)判断指定集合的所有元素是否都包含在原始的集合中,如果是则返回 True,否则返回 False.
s3 = {1,2,3,4}
s4 = {1,2,3}
print(s3.issuperset(s4)) # s3是否包含s4
输出:True
(2)判断集合的所有元素是否都包含在指定集合中,如果是则返回 True,否则返回 False.
s3 = {1,2,3}
s4 = {1,2,3,4}
print(s3.issubset(s4)) # s3是否包含于s4
输出:True
(3)用于判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False.
s3 = {1,2,3}
s4 = {4,5,6}
print(s3.isdisjoint(s4)) # 是否存在交集,不存在返回 True,存在返回 False.
输出:True