集合名 = {值1,值2,值3}
特点:
1、元素不可变
2、不可以存列表list、字典dict
3、只可存字符串、数字、元组等不可变的类型
4、天生去重,无法存储两个相同的元素
5、无序,不能像列表那样通过索引去确定元素的位置
列表转集合:变量名 = set(列表名)
增加:
1、集合名.add(增加的值)
如果增加的值已经存在集合中,则不会再增加
增加的值是可变类型(如列表)时,会提示报错
删除:
1、集合名.discard(需要删除的值)
删除指定值,如果指定值不存在也不会报错
2、集合名.pop()
随机删除一个值并返回该值
3、集合名.remove(需要删除的值)
删除指定值,如果指定值不存在会直接报错
集合的运算:
1、交集 &
集合1 & 集合2
取两个集合都有的元素
2、并集 |
集合1 | 集合2
合并两个集合
3、差集 -
集合1 - 集合2 去除集合1中与集合2相同的元素并返回集合1的元素
集合2 - 集合1 去除集合2中与集合1相同的元素并返回集合2的元素
4、对称差集 ^
集合1 ^ 集合2
把两个集合都有的元素去掉,返回两具集合中剩下的元素
相交、包含、不相交
1、相交:两个集合中都存在相同的一个或多个元素
集合1.isdisjoint(集合2) 判断两个集合是不是不相交,不相交返回True,相交返回False
2、包含:两个集合中,其中一个集合的元素全部与另一集合的元素相同,子集
集合1.issubset(集合2) 判断集合1是不是集合2的子集,是的话返回True,否的话返回False
3、不相交:两个集合中的元素完全不相同