python数据类型-集合set

1 集合(set)的定义

1.1 集合是一个无序且不重复元素的序列:

1)无序:存储顺序和添加的顺序不一定相同,不支持索引、切片
2)元素不重复:当添加重复元素时,集合会自动去重。因此set常用来消除重复元素

1.2 创建方式

可以通过大括号{} 或者 set()函数创建,
注:创建空集合时必须用set函数创建,因为{}是用来创建一个空的字典

set1 = {1, 2, 3, 2}
print(type(set1), set1)  # <class 'set'> {1, 2, 3}  自动消除重复元素set2 = set([1, 4, 'henry', 'tom'])
print(type(set2))  # <class 'set'># 创建空集合必须用set函数
set3 = {}
print(type(set3))  # <class 'dict'>
set4 = set([])
print(type(set4))  # <class 'set'>

2 集合运算(针对于两个集合之间)

差集:-
并集:|
交集:&
不同时包含:^

a = set('abcdef')
b = set('abc123')
set1 = a - b  # 差集,在a中不在b中
print(set1)  # {'e', 'f', 'd'}set2 = a | b  # 并集
print(set2)  # {'e', 'f', '1', '2', '3', 'c', 'd', 'b', 'a'}set3 = a & b  # 交集
print(set3)  # {'c', 'b', 'a'}set4 = a ^ b  # 不同时存在于a和b中的元素,即:a与b的并集 减去 a与b的交集
print(set4)  # {'2', '3', 'f', '1', 'e', 'd'}

3 集合的操作

1)添加元素:
add:添加单个元素
update:添加多个元素
remove:删除元素,元素不存在会报错
discard:删除元素,元素不存在不会报错
pop():随机删除一个元素
in : 判断元素是否在集合内
set1.issubset(set2): 为True时说明–set1的超集为set2
超集:父集、被包含的意思

set11 = {1, 2, 3, 'a', 'b', 'c'}
set22 = {'a', 'b'}
set11.add('tom')  # 增加一个元素
print(set11)  # {1, 2, 3, 'a', 'b', 'c', 'tom'}set11.remove(2)
print(set11)  # {1, 3, 'a', 'b', 'c', 'tom'}# set11.remove('henry') # 集合中没有此元素,用remove会报错
set11.discard('henry')  # 集合中没有此元素,用discard不会报错x = set11.pop()  # 随机删除一个元素
print(set11)set11.update(([10, 11, 12]))
print(set11)  # {3, 'a', 'c', 'tom', 10, 11, 12, 'b'}print('tom' in set11)  # True
print('henry' in set11)  # Falseprint(set22.issubset(set11)) # true; 超集,set22的超集是set11,即 set11包含了set22

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/694458.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

scss导出颜色变量为空对象

scss导出颜色变量为空对象 scss文件 $base-menu-color:#bfcbd9; :export {menuColor: $base-menu-color }页面使用 import variables from "/assets/styles/variables.scss";然后打印发现 console.log(variables) // {} 打印值为空对象此时我们需要将文件名varia…

typescript映射类型

ts映射类型简介 TypeScript中的映射类型&#xff08;Mapped Type&#xff09;是一种高级类型&#xff0c;它允许我们基于现有类型创建新的类型&#xff0c;同时对新类型的每个属性应用一个转换函数。通过使用映射类型&#xff0c;我们可以方便地对对象的属性进行批量操作&…

BeautifulSoup的使用与入门

1. 介绍 BeautifulSoup是用来从HTML、XML文档中提取数据的一个python库&#xff0c;安装如下: pip install beautifulsoup4 它支持多种解析器&#xff0c;包括python标准库、lxml HTML解析器、lxml XML解析器、html5lib等。结合稳定性和速度&#xff0c;这里推荐使用lxml HT…

typescript 索引签名类型

ts索引类型简介 在TypeScript中&#xff0c;索引签名类型&#xff08;Index Signature Type&#xff09;是一种特殊的类型&#xff0c;它定义了对象中键的类型以及相应的值的类型。通过使用索引签名类型&#xff0c;我们可以表示一个对象&#xff0c;该对象的键可以是任意类型…

spring boot Mybatis Plus分页

文章目录 Mybatis Plus自带分页和PageHelper有什么区别&#xff1f;Mybatis Plus整合PageHelper分页 springboot自定义拦截器获取分页参数spring boot下配置mybatis-plus分页插件单表分页查询自定义sql分页查询PageHelper 参考 Mybatis Plus自带分页和PageHelper有什么区别&…

python3 flask 实现对config.yaml文件的内容的增删改查,并重启服务

config.yaml配置文件内容 功能就是userpass下的用户名和密码做增删改查&#xff0c;并重启hy2服务 auth:type: userpassuserpass:csdn: csdnlisten: :443 masquerade:proxy:rewriteHost: trueurl: https://www.bing.com/type: proxy tls:cert: /root/hyst*****马赛克******er…

开源大数据管理平台选型

随着CDH和HDP的闭源&#xff0c;还有国内信创需求&#xff0c;经过前期调研和后期实践&#xff0c;目前主要有两个产品满足要求&#xff1a;apache bigtop 和 DataSophon 符合要求。因为这两个产品都是完全开源的&#xff0c;自助可控。 一 apache bigtop 项目地址&#xff1…

【算法2-1】前缀和、差分与离散化

一、【P3406】海底高铁&#xff08;差分贪心&#xff09;​​​​​​ 由于本题涉及到线路问题&#xff0c;需要统计Uim途径每条线路的次数&#xff0c;而且Uim每次的轨迹都是很长一段路径&#xff0c;所以需要使用一个合理的数据结构来维护区间的变化&#xff0c;首先想到线段…

正交匹配追踪算法(Orthogonal Matching Pursuit)实现过程及Python模拟

正交匹配追踪&#xff08;Orthogonal Matching Pursuit&#xff0c;OMP&#xff09;是一种用于寻找稀疏信号的贪婪算法&#xff0c;用于求解压缩感知问题中的稀疏近似问题。在压缩感知的背景下&#xff0c;通常我们有一个欠定的线性系统Ax y&#xff0c;其中A是一个已知的测量…

信奥一本通:2022:【例4.7】最小n值

这个题目的难点在于他让你输入1 2 3&#xff0c;不等的数&#xff0c;意思就是你不知道循环要执行几次&#xff0c;用户输入几次就是几次&#xff0c;那就只有这样写 while (cin >> num) #include <iostream> # include <iomanip> using namespace std;…

第三百五十九回

文章目录 1. 概念介绍2. 使用方法3. 代码与效果3.1 示例代码3.2 运行效果 4. 内容总结 013pickers2.gif 我们在上一章回中介绍了"如何实现Numberpicker"相关的内容&#xff0c;本章回中将介绍wheelChoose组件.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 概念…

学习鸿蒙基础(4)

1.条件渲染 ArkTS提供了渲染控制的能力。条件渲染可根据应用的不同状态&#xff0c;使用if、else和else if渲染对应状态下的UI内容。 当if、else if后跟随的状态判断中使用的状态变量值变化时&#xff0c;条件渲染语句会进行更新。。 Entry Component struct PageIfElse {Stat…

【C++杂货铺】模板

&#x1f308;前言&#x1f308; 欢迎观看本期【C杂货铺】&#xff0c;本期内容将讲解模板的初阶&#xff0c;即了解模板&#xff0c;熟练掌握模板的使用方法&#xff0c;了解模板的工作原理等内容。 &#x1f4c1; 函数模板 &#x1f4c2; 概念 函数模板代表了一个函数家族&am…

typescript 对象的属性定义

const ENUM_MAP_LIST: IMapListType {jf: {iconname: iconfont icon-wodejifen,color: #F3A31E,name: mypoint,number: 123,text: "我的积分",url: /integral/rtre,},px: {iconname: iconfont icon-wodeRdeIun,name: mytrain,color: #4285F4,number: 223,text: &qu…

如何在Windows系统中检测和结束运行中的程序(任务管理器显示运行程序可能有bug)

如何在Windows系统中检测和结束运行中的程序 在Windows系统的日常使用和管理过程中&#xff0c;我们经常需要检测某个程序是否正在运行&#xff0c;并在必要时结束它。本文将详细介绍如何在Windows系统中检测运行中的程序&#xff0c;并提供多种方法来结束这些程序。 检测运行…

通俗易懂的双亲委派机制

当你超过别人一点点&#xff0c;别人会嫉妒你&#xff1b;当你超过别人一大截&#xff0c;别人就会羡慕你 据说给我点关注的都成了大佬&#xff0c;点关注的我都会私发一份好东西 ​​​​你得先知道 在介绍双亲委派机制的时候&#xff0c;不得不提ClassLoader&#xff08;类…

Java字符串转整数的超简单方法!

推荐阅读 智能化校园&#xff1a;深入探讨云端管理系统设计与实现&#xff08;一&#xff09; 智能化校园&#xff1a;深入探讨云端管理系统设计与实现&#xff08;二&#xff09; 问题描述 当你把一个字符串值和一个整数加在一起而不进行任何形式的转换时会发生什么呢&#…

聚合支付,聚合系统,聚合程序或将成为主流

支付市场的变化对用户、代理商和运营商产生了重大影响。 随着政策监管的日益严格&#xff0c;支付行业逐渐朝着标准化和合理化的方向发展&#xff0c;日益增强其安全性。在这个背景下&#xff0c;聚合平台已经成为未来支付行业发展的重要趋势。特别是在“一机一码”政策实施后&…

前端进度条组件NProgress

nprogress 安装 npm install --save nprogress使用 import NProgress from nprogress // 引入nprogress插件 import nprogress/nprogress.css // 这个nprogress样式必须引入// axios请求拦截器 axios.interceptors.request.use(config > {NProgress.start() // 设置加载进…

【学习心得】编程小白该如何学好C语言(✨新手推荐阅读)

前言 对于刚刚踏入编程领域的小白来说&#xff0c;C语言可能是一个既神秘又充满挑战的领域。但只要你掌握了正确的学习方法&#xff0c;C语言的学习之旅也可以是充满乐趣和成就感的。 一、明确学习目标 对于初学者来说&#xff0c;明确学习目标是学好C语言的第一步。一个清晰…