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. 和我一起打造个简单搜索之ElasticSearch集群搭建

    我们所常见的电商搜索如京东,搜索页面都会提供各种各样的筛选条件,比如品牌.尺寸.适用季节.价格区间等,同时提供排序,比如价格排序,信誉排序,销量排序等,方便了用户去找到自己心里理想的商品. 站内搜索对 ...

  2. T-SQL 分布式查询

    --返回本地服务器中定义的链接服务器列表. EXEC sys.sp_linkedservers /* 创建或更新 SQL Server 本地实例上的登录名与远程服务器中安全帐户之间的映射. 当用户登录 ...

  3. Java NIO系列教程(六) Selector

    Selector(选择器)是Java NIO中能够检测一到多个NIO通道,并能够知晓通道是否为诸如读写事件做好准备的组件.这样,一个单独的线程可以管理多个channel,从而管理多个网络连接. 下面是 ...

  4. spark-调度策略之FAIR

    1.概述 spark有两种调度模式:FIFO.FAIR.FIFO是先进先出,有很强的顺序性,只有前一个处理完成后才会去处理后进来的.FAIR是公平调度,通过配置进行控制优先执行的任务.spark默认使 ...

  5. 【译】如何更好的使用javascript数组

    赶紧阅读读此文,我保证,在过去的几个月里我,我确定我在数组问题上犯过4次错误.于是我写下这篇文章,阅读这篇文章可以让你更准确的使用javascript数组的一些方法 使用Array.includes替 ...

  6. Mysql技能之【性能优化方案】

    两个SHOW命令 Mysql服务状态 SHOW GLOBAL STATUS; Mysql配置信息 SHOW VARIABLES: 慢查询 show variables like '%slow%'; s ...

  7. 表格行mouse经过时高亮显示

    昨天有解决网友一个问题<Repeater控件添加onmouseover和onmouseout事件>http://www.cnblogs.com/insus/p/3714013.html 这 ...

  8. MFC框架之线程局部存储

    线程局部存储中用到的API基础:(TLS:Thread Local Storage) 1.在主线程中申请索引 g_index=::TlsAlloc(); 2.在线程函数中使用索引 存值:::TlsSe ...

  9. 设计模式-原型(prototype)

     一.概念 用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象. 二.模式动机 当已有一个对像,暂且称之为原型对象,需要一个新的对像,该对像和已有的原型对像具有相同的类型,且里面的属性大部分 ...

  10. 十分钟搞定mac下的phpstorm增加xdebug调试

    一.版本信息 mac 10.10.5 php  5.5.38 phpstorm 10.0.3 xdebug   版本需要与php匹配,匹配地址 :点我匹配  点我查看所有版本 提示:不确定xdebug ...