python-集合,,集合(set)跟我们
python-集合,,集合(set)跟我们
集合(set)跟我们学的列表有点像,也是可以存一堆数据,不过它有几个独特的特点,令其在整个Python语言中占有一席之地
里面的元素不可变,代表你不能存一个list、dict 在集合里,字符串、数字、元组等不可变类型可以存
天生去重,在集合里没办法存重复的元素
无序,不像列表一样通过索引来标记在列表中的位置 ,元素是无序的,集合中的元素没有先后之分,如集合{3,4,5}和{3,5,4}算作同一个集合
基于上面的特性,我们可以用集合来干2件事,去重&关系运算
s1 = {1,2,3}s2 = {3,1,2}print(s1 == s2) # True
增删改查
元素不能改
增加一个新元素 s.add(self,element)
s = {2,5,8,"any", "joy"}s.add("hello") # s = {2, 5, 8, 'joy', 'any', 'hello'}合并集合 s.update(s2)
s = {2,5,8,"any", "joy"}s2 = {2,3,5,8}s.update(s2) # s= {'joy', 'any', 2, 3, 5, 8}删除元素 s.discard(self.element)
s = {2,5,8,"any", "joy"}s.discard("joy")s.discard("joy") # 元素不存在是也不会报错,此时不做任何操作删除元素,元素不存在则报错
s = {2,5,8,"any", "joy"}s.remove(5)s.remove(6) # 报错随机删除 s.pop()
s = {2,5,8,"any", "joy"}print(s.pop()) # 随机删除一个元素并返回该元素清空集合
s = {2,5,8,"any", "joy"}s.clear()判断元素是否在集合中
s = {2,5,8,"any", "joy"}print(5 in s) # True
去重
重复的元素在集合中存不进去s = {2,4,3,1,"jack", 3,5}print(s) # s = {1, 2, 3, 4, 5, 'jack'}帮列表去重(就是把列表转成集合,去重完,再转回列表)
li = [1,2,3,4,5,3,4,2]li2 = list(set(li)) # li2 = [1, 2, 3, 4, 5]
关系运算
s_1 = {"佩奇","老男孩","海峰","马JJ","老村长","黑姑娘","Alex"}s_2 = {"Alex","Egon","Rain","马JJ","Nick","Jack"}print(s_1 & s_2) # 交集, elements in both setprint(s_1 | s_2) # 并集 or 合集print(s_1 - s_2) # 差集 , only in s_1print(s_2 - s_1) # 差集, only in s_2print(s_1 ^ s_2) # 对称差集, 把脚踩2只船的人T出去
python-集合
相关内容
- python—集合,, ——集合: (集
- Python-集合,,集合中的元素必须可h
- Python--字符串格式化,,1、字符串格式化pr
- Python3基础 hasattr 测试一个对象是否有指定的属性,,镇
- Python 之try...except...错误捕捉,,导入:lib下面的模
- 通过遍历而非排序求最值 python list in 时间复杂度 列表
- python----类的定义、继承与重定义,, 1 #!/usr/
- 利用python数据分析panda学习笔记之DataFrame,,2 DataFram
- python3-特征值,特征向量,逆矩阵,,import num
- python中的*和**的用途,,deffunctio
评论关闭