详解python的集合set的函数
作者:April.? 发布时间:2023-02-06 04:16:42
s={ x1,x2,x3.....};
集合有自动去重的功能,而且可以进行交并补运算,而且集合是无序的,每次打印的结果不一样,故不可以用元素下标进行取值。因无法取值,故无法对特定的值进行修改。但是可以进行删除操作。
s=set();表示创建一个空的集合。注意:s={}表示创建一个空的字典。
常用
查询
x in s,s为一个集合,返回bool类型,判断x是否在集合s中。
增加
s.add(“x”);将“x”添加到集合s中。
删除
s.pop()
;随机删除集合s中的一个元素。
s.remove(“x”)
;删除集合s中的元素“x”,若无“x”则报错。
s.discard(“x”)
;删除集合s中的元素“x”,若无“x”不报错。
s.clear()
;将集合s清空,清空后s=set()。
交、并、补、对称差
交集
s=s1&s2
;s=s1.intersection(s2)
,s=set.intersection(s1,s2)
;得到集合s为集合s1和集合s2的交集。
并集
s=s1|s2
;s=s1.unoin(s2)
,s=set.union(s1,s2)
;得到集合s为集合s1和集合s2的并集。
补集
s=s1-s2
;s=s1.difference(s2)
,s=set.difference(s1,s2)
;得到集合s为在集合s1中但不在集合s2中的元素。
对称差
s=s1^s2
;s=s1.symmetric_difference(s2)
,s=set.symmetric_difference(s1,s2)
;得到集合s为仅在集合s1和仅在集合s2中的元素之和。
其他
s1=s.copy()
;将集合s的数据复制给集合s1,s和s1的地址不同,互不影响。(若用s1=s,则s1的数据与s相同且地址相同,对s做修改等于对s1做修改)
s.difference_update(s1,s2)
;将s-s1-s2的结果(补集)赋值给s。
s.intersection_update(s1,s2)
;将s&s1&s2的结果(交集)赋值给s。
s.isdisjoint(s1)
;如果s与s1的交集为空,则返回True,否则返回False。
s.issubset(s1)
;若s为s1的子集,则返回True。
s.issuperset(s1)
;若s1为s的子集,则返回True。
s.symmetric_difference_update(s1)
;括号内只能有一个参数,将s^s1的结果(对称差)赋值给s。
s.update(s1,s2)
;将s|s1|s2的结果(并集)赋值给s 。
来源:https://blog.csdn.net/Conding_Farmer/article/details/122511841


猜你喜欢
- 前言最近网站从HTTPS转为HTTP,更换了网址,旧网址做了301重定向,折腾有点大,于是在百度站长平台提交网址,不管是主动推送还是手动提交
- 变量命名在《初识永远强大的函数》一文中,有一节专门讨论“取名字的学问”,就是有关变量名称的问题,本温故而知新的原则,这里要复习:名称格式:(
- 1. 用grep函数 函数名 grep 调用语法 @foundlist = grep (pattern, @searchlist); 解说
- 去除HTML代码中所有标签<% '****************************** '函数:RemoveH
- CSS3的box-shadow属性可以让我们轻松实现图层阴影效果。我们来实战详解一下这个属性。1. box-shadow属性的浏览器兼容性先
- 目录1. 现实背景2. 约定3. 配置 master3.1. 配置启动参数3.2. 重启服务使参数生效3.3. 以 root 身份登录,创建
- 查询7天连续登陆用户这个问题很经典,解决方法也有很多,这里我讲一下笔者的方法,希望对大家有帮助。具体思路:1、因为每天用户登录次数可能不止一
- xmlhttp,IE不支持overrideMimeType()方法,即使是IE7。 // Mozilla/Safari/
- 迭代器什么是迭代迭代是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果。每一次对过程的重复称为一次“迭代&
- 准备工作首先是准备工作,导入需要使用的库,读取并创建数据表取名为loandata。import numpy as npimport pand
- 前言网上很多例子都说cv2.minAreaRect函数的输出的角度范围在[-90,0],但是实测输出范围在[0,90]。再进行调研,确定为o
- 对数据库的操作无非就是增删改查,其中数查询操作最为复杂,所以将查询单独讲解,我这里用的Mysql数据库增删改查操作分页查询操作1.查询结果以
- 你知道吗?实际上Python早在20世纪90年代初就已经诞生,可是火爆时间却并不长,就小编本人来说,也是前几年才了解到它。据统计,目前Pyt
- 用js限制网页只在微信浏览器中打开js代码一$(function(){//判断页面是否是在微信浏览器打开//对浏览器的UserAgent进行
- MSXML是微软非托管代码栈中最为核心的XML服务集合,不但适合基于COM的开发应用,更是微软AJAX解决方案和客户端XSLT解决方案的核心
- 为了实现项目中的搜索功能,我们使用的是全文检索框架haystack+搜索引擎whoosh+中文分词包jieba安装和配置安装所需包pip i
- 前言extends关键字在TS编程中出现的频率挺高的,而且不同场景下代表的含义不一样,特此总结一下:表示继承/拓展的含义表示约束的含义表示分
- 今天来说说鄙人对input输入框在处理上的细节处理和心得,其实制作一个符合CSS标准、FF/IE7/IE6等主流浏览器全兼容、符合用户体验的
- 一、当前时间戳获取当前时间戳,即当前系统内表示时间的一个浮点数import timetime.time()二、获取当前时间字符串获取当前时间
- 本文实例讲述了Flask教程之重定向与错误处理。分享给大家供大家参考,具体如下:Flask类有一个redirect()方法. 当我们调用它时