集合:集合与列表、元组类似,可以存储多个数据,但是这些数据是不重复的(具有自动去重功能)。
集合的格式:
变量名={元素1,元素2,元素3…}
变量 = set(可迭代的内容) 可迭代内容—> list,str,元组,字典
一、创建集合
1、
set1 = {True, 1, 'hello', 0, False}
print(set1) # 注意True 会转换成数字 1 进行比较#False 会转化成0 进行比较,去重优先留下前面的元素。
print(type(set1)) # 查看数据类型
2、列表转集合
lst = ['a', 'b', 'c']
set1 = set(lst)
print(set1)#无序但是数字有序
3、字符串转集合
s = 'hello'
set1 = set(s)
print(set1) # {'h','e','l','o'}无序的
4、元组转集合
tup = (1, 2, 3, 4, 3, 2, 1)
set1 = set(tup)
print(set1)
5、字典转集合,只能获取key
dic = {'name':'zs','age':10}
set1=set(dic)
print(set1)# 字典只能获取key。
二、创建一个空集合 使用 set() 内置函数,
如果使用set1={} 默认是创建字典。
set2 = set()
print(set2) # set()
注意: 集合中的值不能是可变数据类型
set1 = {'A', 'B', 'C', [1, 2, 3]}
print(set1)#会报错,[1,2,3]是可变数据类型。
三、集合的添加
**1、add()**添加一个元素
set1 = {'悟空', '八戒'}
set1.add('三藏')
print(set1)
**2、update()**集合相加自动去重
set1 = {'悟空', '八戒'}
set2 = {'悟空', '白骨精'}
set1.update(set2)
print(set1)
四、集合的删除
1、pop()
set1 = {'悟空', '八戒', 'san'}
set1.pop() # 随机删除一个元素
print(set1)
2、remove()
set1 = {'悟空', '八戒', 'san'}
set1.remove('悟空') #删除指定的内容
print(set1)
3、clear()
set1.clear() # 清空集合
print(set1) # 输出 set()
4、del
del set1
print(set1) # 报错
五、集合的遍历
set1 = {'a', 'b', 'c', 'd'}
for i in set1:
print(i)#遍历也是无序的哈哈
六、关系测试
1.交集。(& 或者 intersection) 取公共部分
2.并集。(| 或者 union) 取去除重复部分内容
3.差集。(- 或者 difference)取set1或者set2中除去公共部分的内容
4.反交集。(^ 或者 symmetric_difference)
5.子集。(< 或者 issubset)
6.超集。(> 或者 issuperset)