set集合是一个无序且不重复的元素集合

这个数据类型没有重复的,而且也没有顺序

一些基本的方法:

添加元素

s1 = {11, 22, 33}
s1.add(123)#添加一个新的元素
print(s1) {123, 33, 11, 22}

清除内容:

s1 = {11, 22, 33}
s1.clear()#clear会清除所有的内容
print(s1) set()

差集

s1 = {11, 22, 33}
s2 = {22, 33, 44}
s3 = s1.difference(s2)#只输出前者存在的,后者不存在的
print(s3) {11}
s1 = {11, 22, 33}
s2 = {22, 33, 44}
s1.difference_update(s2)#更新差集到前者,只输出前者存在的,后者不存在的,但是这个不需要第三个变量
print(s1) {11}

交集:

s1 = {11, 22, 33}
s2 = {22, 33, 44}
s3 = s1.intersection(s2)#只输出它俩公有的
print(s3) {33,22}
s1 = {11, 22, 33}
s2 = {22, 33, 44}
s1.intersection_update(s2)#更新交集到前者,只输出它俩公有的,这种方法不需要第三个变量
print(s1) {33,22}

移出指定元素:

s1 = {11, 22, 33}
s2 = {22, 33, 44}
s1.discard(11)#可以看到如果存在,就删除后返回剩余的元素
print(s1)
s2.discard(456)#如果不存在,也返回剩余的元素,不会报错
print(s2) {33, 22}
{33, 44, 22}

判断是否有交集:

s1 = {11, 22, 33}
s2 = {22, 33, 44}
print(s1.isdisjoint(s2))#判断是否有交集,如果没有返回True,否者返回False False

随机移出元素:

s1 = {11, 22, 33}
s1.pop()#这个是随机移出得,因为set集合没有顺序
print(s1) {11,33}

移出指定元素:

s1 = {11, 22, 33}
s2 = {22, 33, 44}
s1.remove(11)#存在则不报错
print(s1)
s2.remove(456)#不存在报错
print(s2) {33,22}
s2.remove(456)
KeyError: 456

对称差集:

s1 = {11, 22, 33}
s2 = {22, 33, 44}
s3 = s1.symmetric_difference(s2)#将它俩所有不相同的元素放在一起
print(s3) {11,44}
s1 = {11, 22, 33}
s2 = {22, 33, 44}
s1.symmetric_difference_update(s2)#将更新的内容放到前者,不需要第三个变量,其他跟上面一样
print(s1) {11,44}

并集:

s1 = {11, 22, 33}
s2 = {22, 33, 44}
s3 = s1.union(s2)#把它俩的内容全部输出到一起,但是set集合是唯一的,所以输出的内容没有一样的
print(s3) {33, 22, 11, 44}

更新:

s1 = {11, 22, 33}
s2 = {22, 33, 44}
s1.update(s2)#跟上面一样,但时没有第三个变量
print(s1) {33, 22, 11, 44}

python set集合一些基本方法的更多相关文章

  1. python set() 集合的添加删除、交集、并集、差集、交叉补集、集合的方法介绍以及使用案例

    可变不可变: 1.可变:列表.字典.例如列表类型是可变的,我修改了列表中的元素的值,但是列表本身在内存中的地址是没有变化的,所以列表的元素是可以被改变的 >>> name=[&quo ...

  2. python之集合及其方法---整理集

    集合的定义: 由不同元素组成.一组无序排列的可hash值.集合中元素必须是不可变类型 集合的定义方式: 由大括号组成: 每个元素用逗号分隔: 元素书写不是key-value形式: 集合是由不同元素组成 ...

  3. Python遍历List集合四种方法

    这篇文章主要介绍了Python 列表(List) 的四种遍历方法实例 详解的相关资料,需要的朋友可以参考下 分别是:直接遍历对象 通过索引遍历 通过enumerate方法 通过iter方法. 使用Py ...

  4. python常用数据类型内置方法介绍

    熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...

  5. Python 3 集合基础和概念!

    Python 3 集合基础和概念! Python 3中,集合是无序的,所以不能进行切片和索引操作. 创建集合有两个方法:set()方法创建的集合是可变的,可被迭代的:frozenset()方法创建的集 ...

  6. Python的集合

    1. Python的集合 1.1 集合的定义 在Python中, 集合set是基本数据类型的一种集合类型,它有可变集合(set())和不可变集合(frozenset)两种.Python中的集合set类 ...

  7. python字符串常用内置方法

    python字符串常用内置方法 定义: 字符串是一个有序的字符的集合,用与存储和表示基本的文本信息. python中引号中间包含的就是字符串. # s1='hello world' # s2=&quo ...

  8. python之集合(set)学习

    集合(set) 集合是一个无序的不重复元素序列,使用大括号({}).set()函数创建集合, 注意:创建一个空集合必须用set()而不是{},因为{}是用来创建一个空字典. 集合是无序的.不重复的.没 ...

  9. Python学习-31.Python中集合的一些操作

    add方法: s = {1,2,3} s.add(4) print(s)# {1, 2, 3, 4} 同list的append方法,若调用s.add(3),则不会有任何影响.这点与C#中的HashSe ...

随机推荐

  1. @Async的使用

    从Spring3.x 开始,加入@Async这个注解,用户异步线程处理,使用起来很方便. 使用配置如下:spring-task.xml <task:executor id="execu ...

  2. Tomcat学习总结(3)——Tomcat优化详细教程

    Tomcat是我们经常使用的 servlet容器之一,甚至很多线上产品都使用 Tomcat充当服务器.而且优化后的Tomcat性能提升显著,本文从以下几方面进行分析优化. 一.内存优化 默认情况下To ...

  3. Solr 清空数据的简便方法

    1. 首先访问你的 core,然后点击左侧的 Documents 2. 在 documents type 选择 XML 3. documents 输入下面语句 <delete><qu ...

  4. C# List集合基础操作

    这里介绍一下C# list的基础操作: 去重.差集.并集.交集 下面,我们看看例子.我们创建了一个User实体,包含两个list,User实体如果Id相等,则相等. users1是id 1到4的集合, ...

  5. [转]小程序web-view组件

    本文转自:https://www.cnblogs.com/-nothing-/p/7910355.html 1,web-view这个组件是什么鬼? 官网的介绍:web-view 组件是一个可以用来承载 ...

  6. ASP.NET开发,从二层至三层,至面向对象 (5)

    此是一系列博文,最后一篇了.也是面向初学者而作,望你们能有更好,更多对ASP.NET面向对编程了解与认识. 前一篇中<ASP.NET开发,从二层至三层,至面向对象 (4)>http://w ...

  7. net 异步与同步

    一.摘论 为什么不是摘要呢?其实这个是我个人的想法,其实很多人在谈论异步与同步的时候都忽略了,同步异步不是软件的原理,其本身是计算机的原理及概念,这里就不过多的阐述计算机原理了.在学习同步与异步之前, ...

  8. SQL查询中的转义字符

    转载自http://blog.csdn.net/Adi_liu/archive/2007/12/06/1920606.aspx   如果想查找“_cs”结尾的的账户 select * from [us ...

  9. 了解java虚拟机—串行回收器(6)

    串行回收器 串行回收器只有一个工作线程,串行回收器可以在新生代和老年代使用,根据作用于不同的堆和空间,分为新生代串行回收器和老年代串行回收器. 1.新生代串行回收器 串行收集器是所有垃圾回收器中最古老 ...

  10. .net防止SQL注入的一种方式

    首先也要明白一点,什么是SQL注入 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.具体来说,它是利用现有应用程序,将 ...