集合(set)是一个无序的不重复元素序列。

可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

创建格式:

parame = {value01,value02,...}
或者
set(value)

1、add(增加元素)

name = set(['Tom','Lucy','Ben'])
name.add('Juny')
print(name) #输出:{'Lucy', 'Juny', 'Ben', 'Tom'}

2、clear(清空所有元素)

name = set(['Tom','Lucy','Ben'])
name.clear()
print(name) #输出:set()

3、copy(拷贝set集合)

name = set(['Tom','Lucy','Ben'])
new_name = name.copy()
print(new_name) #输出:{'Tom', 'Lucy', 'Ben'}

4、difference(返回两个或多个集合中不同的元素,并生成新的集合)

A = set([,,,])
B = set([,])
C = set([])
n = A.difference(B,C)
print(n) #输出:{}
#返回A集合里面,在B和C集合中没有的元素,并生成新的集合

5、difference_update(删除A集合里面,在B集合中存在的元素。)

A = set([,,,])
B = set([,])
A.difference_update(B)
print(A) #输出:{, }

6、discard(移除元素,如果元素不存在不报错)

n = set([,,])
n.discard()
print(n) #输出:{, }

7、intersection(取交集,并生成新的集合)

n1 = set([,,,])
n2 = set([,,,])
n = n1.intersection(n2)
print(n) #输出:{, }

8、intersection_update(取交集,修改原来的集合)

n1 = set([,,,])
n2 = set([,,,])
n1.intersection_update(n2)
print(n1) #输出:{, }

9、isdisjoint(判断交集,是返回False,否返回True)

n1 = set([,,,])
n2 = set([,,,])
print(n1.isdisjoint(n2)) #输出:False

10、issubset(判断子集)

A = set([,])
B = set([,,,])
print(A.issubset(B)) #输出:True
#A是B的子集

11、issuperset(判断父集)

A = set([,])
B = set([,,,])
print(B.issuperset(A)) # 输出:True
#B是A的父集

12、pop(随机移除一个元素)

n = set([,,,])
n1 = n.pop()
print(n,n1) # 输出:{, , }

13、remove(移除指定元素,元素不存在会报错)

n = set([,,,])
n.remove()
print(n) # 输出:{, , }

14、symmetric_difference(取交集,并生成新的集合)

A = set([,,,])
B = set([,,,])
print(A.symmetric_difference(B)) # 输出:{, , , }

15、symmetric_difference_update(取交集,改变原来的集合)

A = set([,,,])
B = set([,,,])
A.symmetric_difference_update(B)
print(A) # 输出:{, , , }

16、union(取并集,并生成新的集合)

A = set([,,,])
B = set([,,,])
print(A.union(B)) # 输出:{, , , , , }

17、update(取并集,改变原来的集合)

A = set([,,,])
B = set([,,,])
A.update(B)
print(A) # 输出:{, , , , , }

python学习之集合的更多相关文章

  1. Python学习五|集合、布尔、字符串的一些特点

    #集合本身就像无值的字典 list1 = set([1,2,3,4]) list2 = {1,2,3,4} print('list1 == list2?:',list1==list2)#list1 = ...

  2. Python学习之==>集合

    1.简介 集合也是一种数据类型,一个类似列表东西,它的特点是无序的,不重复的,也就是说集合中是没有重复数据的. 2.集合的作用 它可以把一个列表中重复的数据去掉,而不需要你再写判断 可以做关系测试,比 ...

  3. Python学习笔记——集合类型

    集合类型有两种不同的类型——可变集合(set)和不可变集合(frozenset) 可变集合不是可哈希的,不能用作字典的键,也不能用做其他集合中的元素 不可变集合是有哈希值的,能被用做字典的键或者是作为 ...

  4. Python学习——set集合的补充

    set 是一个无序且不重复的元素集合>>> num = {1,2,3,4,5} 1.add()添加一个元素 >>> num.add(6) >>> ...

  5. day5:python学习之集合

    0. 集合的作用及特点 集合具有去重和关系测试两大作用,它具有无序的特点. list1 = [1,2,3,4,5,7,6,8,6,4] list1 = set(list1) print(list1) ...

  6. Python学习 :集合

    集合 Set 集合的创建 集合的创建只有一种方式 集合中的元素必须是不可变的数据类型 集合是无序的,可以通过 for 循环来遍历或者迭代器进行筛选 s=set('xiaoming') s1=['ale ...

  7. python学习-21 集合 2

    集合的其他方法 1.交差补集 math = {'xm','xh','xg','xx'} english ={'xm','xh','dm','john'} print(math.symmetric_di ...

  8. python学习-20 集合

    集合set 1.由不同元素组成的集合,集合是一组无序排列的,集合中的元素必须是不可变的 -定义集合 第一种: jh = {1,2,3,4} print(type(jh),jh) 运行结果: <c ...

  9. Python学习笔记——集合

    1. 定义 num = {} print(type(num)) num2 = {1,2,3,4,5} print(type(num2)) <class 'dict'> <class ...

随机推荐

  1. SQL Server进阶(一)T-SQL查询和编程的背景

  2. VS新建项目工具箱图标丢失问题

    (1)在电脑里搜索*.tbd文件(2)建一个项目,把需要的工具箱图标加载上,退出 VS. (3)复制一份toolbox.tbd,重命名为toolbox_reset.tbd 然后以后新建项目就可以了.这 ...

  3. 第三次实验计算分段函数 第四次计算分段函数和循环NEW 第五次分支+循环加强版 实验报告

    一.实验题目,设计思路,实现方法 第四次分支+循环 加强版 (2-2计算个人所得税,2-7 装睡,2-8计算天数) 设计思路:2-2 用if-else的语句,与计算分段函数的题类似的做法:2-7 运用 ...

  4. 集大软件工程15级个人作业Week2

    集大软件工程15级个人作业Week2 快速通读教材<构建之法>,并参照提问模板,提出5个问题. 在每个问题后面,请说明哪一章节的什么内容引起了你的提问,提供一些上下文 列出一些事例或资料, ...

  5. Linux之包管理工具总结[RPM/DPKG]-[YUM/APT]

    0.关键词解释 RPM:Red Hat Package Manager(原名),RPM Package Manager(现名,递归缩写,类似于GNU的命名); 解释:RPM软件包管理器 YUM:Yel ...

  6. mysql 案例 ~ pt修复工具的使用

    简介:今天咱们来聊聊PT修复工具pt-table-sync 注意事项:   1 表要有主键或者唯一键   2 针对每一个chunk加的是for update锁   3 修复过程中不能容忍从库延迟 如果 ...

  7. mysql 案例~mysql主从复制延迟处理(2)

    一 简介:今天来聊聊周期性从库延迟的问题,是上一篇的基础分析的一个场景 二 背景:近期每天的指定时间段,收到从库延迟的报警,然后过一段时间恢复.由于从库是提供读服务的,所以需要解决 三 分析思路: 1 ...

  8. SpringBoot启动方式讲解和部署war项目到tomcat9

    1.SpringBoot启动方式讲解和部署war项目到tomcat9简介:SpringBoot常见启动方式讲解和部署war项目Tomcat 1.ide启动 2.jar包方式启动 maven插件: &l ...

  9. box-cox 转换

    box-cox 由于线性回归是基于正态分布的前提假设,所以对其进行统计分析时,需经过数据的转换,使得数据符合正态分布. Box 和 Cox在1964年提出的Box-Cox变换可使线性回归模型满足线性性 ...

  10. mac安装pyspider报错

    (env)$ pip3 uninstall pycurl (env)$ pip3 install --upgrade pip (env)$ export LDFLAGS=-L/usr/local/op ...