集合(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. ThinkPHP 3.2 支付宝即时到账接口开发

    前言: 一.支付流程 构造请求参数 向支付宝网关发送请求 生成支付宝页面 支付宝交易结果 二.构建支付类 1.官方即时到账文档地址: https://doc.open.alipay.com/doc2/ ...

  2. Servlet总结(一)

    一.Servlet了解 1.Servlet全称Java Servlet,是用java编写的独立于平台和协议的服务器端应用程序,运行于服务器,采用请求-响应模式提供Web服务 2.Servlet实现过程 ...

  3. Linux配置Tomcat步骤mv apache-tomcat-7.0.82 tomcat

    (一)安装JAVA1.检查java环境 java -version,不存在安装.2.yum -y list java* Loaded plugins: fastestmirror, langpacks ...

  4. luogu 1196 银河英雄传说 带权并查集

    带权并查集,其实有点像许多队列问情况的小学奥数 #include<bits/stdc++.h> #define rep(i,x,y) for(register int i=x;i<= ...

  5. JavaScript之加载表格、表单行数据[插件]

    /*** * name:加载表格或表单数据[通用] * name:load-table-or-form-data-common.js * * author:zengtai * date:2017-07 ...

  6. window.location详解

    window.location对象常用属性 location.hostname 返回 web 主机的域名 location.host 返回 web 主机的域名(包含端口) location.pathn ...

  7. Mybatis进阶学习笔记——输出映射

    输出映射(例如一个方法的返回至使用什么类型去接收) 1.基本类型 <!-- 统计记录数 --> <select id="queryTotalCount" resu ...

  8. 实验一 Java开发环境的熟悉--20165221

    实验报告封面 课程:Java程序设计 班级:1652班 姓名:谭笑 学号:20165221 成绩: 指导教师:娄嘉鹏 试验日期:2018.4.2 实验组次:21 预习程度:已预习 实验时间:15:35 ...

  9. UML和模式应用5:细化阶段(2)--细化阶段制品之领域模型

    1.前言 领域模型是OO分析中最重要和经典的模型.它阐述了领域中的重要概念: 领域模型作为设计某些软件对象的重要来源,也作为案例研究中探讨的几个制品的输入: 领域模型的范围限定于当前迭代开发的用例场景 ...

  10. 优秀的gdb图形化前端调试器

    目前我自己最喜欢的还是 ddd . gdbgui 和 vim-vebugger插件或vimgdb插件 三种. You could try using Insight a graphical front ...