第四天 PYTHON 集合
Posted Trunkslisa
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第四天 PYTHON 集合相关的知识,希望对你有一定的参考价值。
Set 集合
集合的特性:
1、 不同元素组成
如:s = {1,2,3,4,3,3,3,3,3}
s = {1,2,3,4}
2、 无序
3、 集合中元素必须是不可变类型
可变类型:列表、字典
不可变类型:数字、字符串、元组
如何设置集合
方法1:
S = {1,2,3,4,5,6}
方法2:
S = set(“hello”) 结果是 s = {‘h’,’l’,’o’,’e’}
Set方法相当于使用for循环将元素一个一个放入集合,重复的删掉
集合的方法:
1、在集合中添加元素,每次只能添加1个
s.add(元素)
2、清空
s.clear()
3、 拷贝
S1 = s.copy()
4、 随机删除一个
s.pop()
5、 指定删除
s.remove(元素)
如果删除的字符串不存在,会报错
6、指定删除(不报错)
s.discard()
如果删除的字符串不存在,不会报错
集合的关系运算:
例子:
# python_l=[‘lcg‘,‘szw‘,‘zjw‘,‘lcg‘]
# linux_l=[‘lcg‘,‘szw‘,‘sb‘]
# p_s=set(python_l)
# l_s=set(linux_l)
1、 交集(共同的部分)
方法1
p_s.intersection(l_s)
方法2
p_s&l_s
2、 并集(集合相加为一个集合)
方法1
P_s.union(l_s)
方法2
P_s|l_s
3、 差集(左边的集合减去右边的集合)
方法一:
P_s.difference(l_s)
方法二:
P_s-l_s
4、 交叉补集(集合相加后减去集合共同的部分)
方法一:
P_s.symmetric_difference(l_s)
方法二:
P_s^L_s
5、 差值更新(求完差值后将结果更新到左边的集合)
方法一:
P_s = p_s-l_s
方法二:
P_s.differnece_update(l_s)
6、 交集更新(求完交集后将结果更新到左边的集合)
P_s.intersection_update(l_s)
7、 判断集合是否没有交集(返回结果是True)
P_s.isdisjoint(L_s)
8、 判断前面的是否是后面的子集(返回结果是True)
S1 = {1,2}
S2 = {1,2,3}
S1.issubset(s2) 结果是True
S2.issubset(s1) 结果是False
9、 判断前面的是否是后面的父集(返回结果是True)
S1 = {1,2}
S2 = {1,2,3}
S1.issuperset(s2) 结果是False
S2.issuperset(s1) 结果是True
10、 更新或添加多个值。将左边的集合用右边的集合进行更新
S1 = {1,2}
S2 = {1,2,3}
S1.update(s2)
S1变为{1,2,3}
S1.update([3,4]) 添加多个值
补充说明:
1、集合是可变类型
2、S = frozenset(‘hello’) 用这个方法定义的是一个不可变的集合
3、不考虑顺序的列表去重
Names = [‘erw’,’sdf’,’erw’]
List(set(names))
以上是关于第四天 PYTHON 集合的主要内容,如果未能解决你的问题,请参考以下文章