当前位置: 首页 > news >正文

Python的集合set用法介绍与例子

用法简介

Python的集合(set)是一种无序且不重复的元素序列。它类似于列表和元组,但集合中的元素是唯一的,没有重复的值。集合在Python中用于执行一些特定的操作,例如消除重复元素、检查元素是否存在等。

下面是一些关于Python集合的基本用法:

创建集合:

使用大括号 {} 创建集合,例如:s = {1, 2, 3}
使用 set() 函数创建集合,例如:s = set([1, 2, 3])
添加元素:

使用 add() 方法向集合中添加一个元素,例如:s.add(4)
使用 update() 方法向集合中添加多个元素,例如:s.update([5, 6])
删除元素:

使用 remove() 方法从集合中删除一个元素,例如:s.remove(3)
使用discard()方法从集合中删除一个元素,例如:s.discard(2)
使用 clear() 方法清空整个集合,例如:s.clear()
集合运算:

使用 & 运算符进行集合交集运算,例如:s1 = {1, 2, 3},s2 = {2, 3, 4},result = s1 & s2
使用 | 运算符进行集合并集运算,例如:s1 = {1, 2, 3},s2 = {2, 3, 4},result = s1 | s2
使用 - 运算符进行集合差集运算,例如:s1 = {1, 2, 3},s2 = {2, 3, 4},result = s1 - s2
检查元素是否在集合中:

使用 in 关键字检查一个元素是否存在于集合中,例如:element in s
使用 not in 关键字检查一个元素是否不存在于集合中,例如:element not in s
遍历集合中的元素:

使用 for 循环遍历集合中的元素,例如:for element in s:
集合的长度:

使用 len() 函数获取集合的长度,例如:length = len(s)
将集合转换为列表或元组:

使用 list() 或 tuple() 函数将集合转换为列表或元组,例如:list_representation = list(s) 或 tuple_representation = tuple(s)。

举个例子:

# 创建两个集合  
s = {1, 2, 3}  
t = set([4, 5, 6])  # 添加元素到集合 s  
s.add(7)  
t.update([8, 9])  # 从集合 s 中删除元素 2  
s.remove(2)  # 清空集合 s  
s.clear()  # 集合运算  
s1 = {1, 2, 3}  
s2 = {3, 4, 5}  
result_intersection = s1 & s2  # 交集运算  
result_union = s1 | s2  # 并集运算  
result_difference = s1 - s2  # 差集运算  # 检查元素是否在集合中  
element = 2  
if element in s1:  print("元素在集合中")  
else:  print("元素不在集合中")  # 输出 "元素在集合中"  # 遍历集合中的元素  
for element in s1:  print(element)  # 输出 1、2 和 3  # 获取集合的长度  
length = len(s1)  # 结果为 3,因为集合中有三个元素  # 将集合转换为列表和元组  
list_representation = list(s1)  # 结果为 [1, 2, 3]  
tuple_representation = tuple(s1)  # 结果为 (1, 2, 3)

相关文章:

Python的集合set用法介绍与例子

用法简介 Python的集合(set)是一种无序且不重复的元素序列。它类似于列表和元组,但集合中的元素是唯一的,没有重复的值。集合在Python中用于执行一些特定的操作,例如消除重复元素、检查元素是否存在等。 下面是一些关…...

服务器感染了.pings勒索病毒,如何确保数据文件完整恢复?

导言: 随着科技的不断进步,网络犯罪也在不断演变。其中之一的.pings勒索病毒是一种危险的恶意软件,它能够加密用户的数据文件,并要求支付赎金以解密这些文件。在本文中,91数据恢复将介绍.pings勒索病毒,以…...

go语言(二)----常量

1、单个常量用const进行定义。 const a int 100 2、多个常量用const()进行定义。 const ( a 10 b 20 ) 3、iota 与const()来表示枚举类型 const( a iota b c ) package mainimp…...

VSC ctrl+鼠标左键点击后,返回原来位置的方法

windows 在使用VSC编写代码时,我们常常用到Ctrl鼠标左键的方式来查看类或变量名的定义声明,看完之后我们想回到程序原来的位置,此时可以通过Alt ←(方向左键)来返回到原来的位置。...

还在为crontab表达式发愁吗,快使用这个工具

是不是每次要定义cron表达式的时候,都去百度翻找资料,cron表达式难写难记真是苦天下程序员久已。有没有什么不拥记的办法就轻松掌握呢?最近发现这个CrontabGuru神器,强烈推荐,真是广大程序员的福音了。 简介 Crontab…...

61. Spring事务传播行为实现原理

61. Spring事务传播行为实现原理 Spring的事务信息是存在ThreadLocal中的, 所以一个线程永远只能有一个事务 融入:当传播行为是融入外部事务则拿到ThreadLocal中的Connection、共享一个数据库连接共同提交、回滚;创建新事务:当传播行为是创建新事务,会将嵌套新事务存入Th…...

智能合约笔记

前言: 首先了解下为什么会出现智能合约,打个比方现在有两个人A和B打赌明天会不会下雨,每个人赌注100元,如果第二天下雨则A拿走200元,否则B拿走200元,这样就有一个问题,赌注要到第二天才能见效&…...

脱离于ASP.NET 和Visual Studio编辑Razor脚本

Razor Pad是一个编辑Razor脚本的工具,脱离于ASP.NET 和Visual Studio。 github地址:GitHub - RazorPad/RazorPad: RazorPad is a quick and simple stand-alone editing environment that allows anyone (even non-developers) to author Razor templat…...

MetaGPT前期准备与快速上手

大家好,MetaGPT 是基于大型语言模型(LLMs)的多智能体协作框架,GitHub star数量已经达到31.3k。 接下来我们聊一下快速上手 这里写目录标题 一、环境搭建1.python 环境2. MetaGpt 下载 二、MetaGPT配置1.调用 ChatGPT API 服务2.简…...

Java、C#、Python间的Battle

一、编译原理和开发效率 编译速度: C# (约大于等于) JAVA > Python python的编译原理 前提:python 3.6 python不会直接编译源码 而是把源码直接扔给解释器,这种方式 使得python非常灵活,让它的开发效…...

【图形学】探秘图形学奥秘:DDA与Bresenham算法的解密与实战

​🌈个人主页:Sarapines Programmer🔥 系列专栏:《图形学 | 图像解码》⏰诗赋清音:云生高巅梦远游, 星光点缀碧海愁。 山川深邃情难晤, 剑气凌云志自修。 ​ 目录 🌌1. 初识模式识别…...

微服务-Gateway

案例搭建 官网地址 父Pom <com.alibaba.cloud.version>2.2.8.RELEASE</com.alibaba.cloud.version> <com.cloud.version>Hoxton.SR12</com.cloud.version> <com.dubbo.version>2.2.7.RELEASE</com.dubbo.version> <dependencyManagem…...

【用队列实现栈】【用栈实现队列】Leetcode 232 225

【用队列实现栈】【用栈实现队列】Leetcode 232 225 队列的相关操作栈的相关操作用队列实现栈用栈实现队列 ---------------&#x1f388;&#x1f388;题目链接 用队列实现栈&#x1f388;&#x1f388;------------------- ---------------&#x1f388;&#x1f388;题目链…...

Angular系列教程之观察者模式和RxJS

文章目录 引言RxJS简介RxJS中的设计模式观察者模式迭代器模式 示例代码RxJS 在 Angular 中的应用总结 引言 在Angular开发中&#xff0c;我们经常需要处理异步操作&#xff0c;例如从后端获取数据或与用户的交互。为了更好地管理这些异步操作&#xff0c;Angular中引入了RxJS&…...

展厅设计中搭建的小常识

1、展厅的安全问题 展厅的空间面积大&#xff0c;平时为出现公开展览时人员较少&#xff0c;但遇到开展活动、会展展览时人流量将大大增多&#xff0c;无论是临时的展厅展示还是长期的展示安全问题即使不说都应该是装饰的重中之重&#xff0c;所以在从前期设计规划到后期施工采…...

LeetCode 98. 验证二叉搜索树

98. 验证二叉搜索树 给你一个二叉树的根节点 root &#xff0c;判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下&#xff1a; 节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。 示例…...

自定义shell工具函数之pull_image()

这是一个名为pull_image的Shell脚本函数。让我来解释一下这个函数的功能&#xff1a; function pull_image() {image$1DOCKER_IMAGE_MIRROR$(get_config_or_env DOCKER_IMAGE_MIRROR)if [[ "${DOCKER_IMAGE_MIRROR}" "1" ]]; thenif [[ "$(uname -m…...

2019年认证杯SPSSPRO杯数学建模C题(第二阶段)保险业的数字化变革全过程文档及程序

2019年认证杯SPSSPRO杯数学建模 基于统计建模的车险业数字变革研究 C题 保险业的数字化变革 原题再现&#xff1a; 车险&#xff0c;即机动车辆保险。保险自身是一种分散风险、消化损失的经济补偿制度&#xff0c;车险即为分散机动车辆在行驶过程中可能发作的未知风险和损失…...

【数据结构和算法】反转链表

其他系列文章导航 Java基础合集数据结构与算法合集 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 其他系列文章导航 文章目录 前言 一、题目描述 二、题解 2.1 方法一&#xff1a;迭代&#xff08;双指针&#xff09; 2.2 方法二&#xff1a;递归 三、代码 3.…...

What is `GenericFilterBean` does?

GenericFilterBean 是 SpringWeb 框架中提供的一个抽象基类&#xff0c;其对 javax.servlet.Filter接口进行了封装和扩展&#xff0c;它简化了在 Servlet环境下创建自定义过滤器的工作。 GenericFilterBean 主要特点包括&#xff1a; 集成 Spring 容器&#xff1a; 由于它是一…...

利用快马平台与vscode codex快速构建react待办事项应用原型

最近在尝试用AI工具快速验证产品原型&#xff0c;发现InsCode(快马)平台配合VSCode Codex能实现惊人的开发效率。以React待办事项应用为例&#xff0c;从零到可交互原型只用了不到10分钟&#xff0c;分享下具体实现思路和操作过程。 需求拆解与AI描述 首先将待办事项应用的7个核…...

Claude技能开发实战指南:从入门到精通的认知升级路径

Claude技能开发实战指南&#xff1a;从入门到精通的认知升级路径 【免费下载链接】awesome-claude-skills A curated list of awesome Claude Skills, resources, and tools for customizing Claude AI workflows 项目地址: https://gitcode.com/GitHub_Trending/aw/awesome-…...

告别杀后台!深度评测Ba-KeepAlive-U:这款UniAppX安卓保活插件到底有多强?(附多机型测试结果)

Ba-KeepAlive-U技术解析&#xff1a;如何为UniAppX应用实现跨机型保活方案 在移动应用开发领域&#xff0c;后台进程存活率一直是困扰开发者的技术难题。尤其对于需要持续运行定位、即时通讯或数据同步功能的应用&#xff0c;系统资源管理策略导致的"杀后台"现象直接…...

揭秘C++多态:动态行为的核心奥秘

C 多态&#xff1a;面向对象的动态行为核心机制多态性是面向对象编程&#xff08;OOP&#xff09;的核心概念之一&#xff0c;它允许对象在运行时根据其实际类型表现出不同的行为。在C中&#xff0c;多态性主要通过虚函数&#xff08;virtual functions&#xff09;和继承机制实…...

代码驱动图表:重新定义技术可视化的开源工具革命

代码驱动图表&#xff1a;重新定义技术可视化的开源工具革命 【免费下载链接】mermaid-live-editor Edit, preview and share mermaid charts/diagrams. New implementation of the live editor. 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid-live-editor …...

利用快马平台快速构建技能评估系统原型:以skill-vetter为例

利用快马平台快速构建技能评估系统原型&#xff1a;以skill-vetter为例 最近在做一个前端开发技能评估系统&#xff0c;需要快速验证产品原型。传统开发流程从搭建环境到功能实现至少需要1-2周&#xff0c;但通过InsCode(快马)平台的AI辅助和现成模板&#xff0c;我只用了3天就…...

Leather Dress Collection 企业级参数调优指南:平衡响应速度与生成质量

Leather Dress Collection 企业级参数调优指南&#xff1a;平衡响应速度与生成质量 如果你正在考虑把Leather Dress Collection这类大模型服务搬到公司的生产环境里&#xff0c;那你肯定遇到过这样的纠结&#xff1a;调快了&#xff0c;生成的内容质量好像会打折扣&#xff1b…...

初识Git,带你深入学习Git相关的知识

在之前的博客中&#xff0c;我都会在博客的开头放一个gitee的链接。Gitee是什么呢&#xff1f;它是一个远程的代码托管库。在我们学习和项目管理的时候起着非常重要的作用。 本期我就带领着大家一起学习Git相关的知识内容。学习它的操作&#xff0c;了解其在企业级开发中的作用…...

Qwen3-TTS作品分享:听AI朗读你的日记、诗歌和故事

Qwen3-TTS作品分享&#xff1a;听AI朗读你的日记、诗歌和故事 1. 为什么你需要一个会"读心"的语音合成工具 想象一下这样的场景&#xff1a;深夜写完日记&#xff0c;点击播放键&#xff0c;听到一个温暖的声音将你的文字娓娓道来&#xff1b;创作完一首诗&#xf…...

西门子S7-300 PLC实战:从零搭建药品装瓶机控制系统(附组态王6.55配置)

西门子S7-300 PLC实战&#xff1a;从零搭建药品装瓶机控制系统&#xff08;附组态王6.55配置&#xff09; 在制药生产线上&#xff0c;药品装瓶环节的效率直接影响整体产能。传统人工装瓶方式不仅速度慢&#xff0c;还容易产生计数误差。而采用PLC控制的自动化装瓶系统&#x…...