集合(set)
集合,保存大量数据,不可以重复 特点:无序,不可重复,内容可哈希,本身不可哈希
k = frozenset(集合):它就会变成一个可哈希的了
增:
s.add(内容)
s.update("内容"):迭代添加
删:
s.pop():随机删除一个,并返回删除的那个内容
s.pop():随机删除一个,并返回删除的那个内容
s.remove(‘指定元素‘):删除指定元素,如果不存在会报错
s.clear():清空集合,如果打印出来空的集合会显示set({})
修改:
一般都是删除再添加的
查:
用for循环来查询
常用操作:
交集:
交集:
print(s1 & s2):返回他们之间相同的元素
s1.intersection(s2)
并集:
print(s1 | s2):返回一个集合,包括他们所有的内容,但是不重复
print(s1 | s2):返回一个集合,包括他们所有的内容,但是不重复
s1.union(s2):
差集
print(s1 - s2)
s1.difference(s2):返回s1去除和s2有相同的内容.如s1{123},s2{3,4,5}返回的是{1,2}
深浅拷贝
普通拷贝 s1==s2 ,如果s1改变,s2也会改变
浅拷贝: 只是对表面的一层可哈希的进行拷贝,拷贝不可哈希的的话只是拷贝内存地址,所以,他们里面的列表还是可变的s2 = s1.copy()
深拷贝:
import copy # 引入模块
ls2 = copy.deepcopy(1s1)
# 他是把所有东西都深层复制下来,ls1更改不会影响ls2