【Python入门第十四天】Python 集合

news2025/2/25 9:53:36

集合(Set)

集合是无序和无索引的集合。在 Python 中,集合用花括号编写。

实例
创建集合:

thisset = {"apple", "banana", "cherry"}
print(thisset)

运行实例

注释:集合是无序的,因此您无法确定项目的显示顺序。

访问项目

您无法通过引用索引来访问 set 中的项目,因为 set 是无序的,项目没有索引。

但是您可以使用 for 循环遍历 set 项目,或者使用 in 关键字查询集合中是否存在指定值。

实例

遍历集合,并打印值:

thisset = {"apple", "banana", "cherry"}

for x in thisset:
  print(x)

运行实例

实例

检查 set 中是否存在 “banana”:

thisset = {"apple", "banana", "cherry"}

print("banana" in thisset)

运行实例

更改项目

集合一旦创建,就无法更改项目,但是可以添加新项目。

添加项目

要将一个项添加到集合,请使用 add() 方法。

要向集合中添加多个项目,请使用 update() 方法。

实例

使用 add() 方法向 set 添加项目:

thisset = {"apple", "banana", "cherry"}

thisset.add("orange")

print(thisset)

运行实例

实例

使用 update() 方法将多个项添加到集合中:

thisset = {"apple", "banana", "cherry"}

thisset.update(["orange", "mango", "grapes"])

print(thisset)

运行实例

获取 Set 的长度

要确定集合中有多少项,请使用 len() 方法。

实例

获取集合中的项目数:

thisset = {"apple", "banana", "cherry"}

print(len(thisset))

运行实例

删除项目

要删除集合中的项目,请使用 remove() 或 discard() 方法。

实例

使用 remove() 方法来删除 “banana”:

thisset = {"apple", "banana", "cherry"}

thisset.remove("banana")

print(thisset)

运行实例

注释:如果要删除的项目不存在,则 remove() 将引发错误。

实例

使用 discard() 方法来删除 “banana”:

thisset = {"apple", "banana", "cherry"}

thisset.discard("banana")

print(thisset)

运行实例

注释:如果要删除的项目不存在,则 discard() 不会引发错误。

还可以使用 pop() 方法删除项目,但此方法将删除最后一项。请记住,set 是无序的,因此您不会知道被删除的是什么项目。

pop() 方法的返回值是被删除的项目。

实例

使用 pop() 方法删除最后一项:

thisset = {"apple", "banana", "cherry"}

x = thisset.pop()

print(x)

print(thisset)

运行实例

注释:集合是无序的,因此在使用 pop() 方法时,您不会知道删除的是哪个项目。

实例

clear() 方法清空集合:

thisset = {"apple", "banana", "cherry"}

thisset.clear()

print(thisset)

运行实例

实例

del 彻底删除集合:

thisset = {"apple", "banana", "cherry"}

del thisset

print(thisset)

运行实例

合并两个集合

在 Python 中,有几种方法可以连接两个或多个集合。

可以使用 union() 方法返回包含两个集合中所有项目的新集合,也可以使用 update() 方法将一个集合中的所有项目插入另一个集合中:

实例

union() 方法返回一个新集合,其中包含两个集合中的所有项目:

set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}

set3 = set1.union(set2)
print(set3)

运行实例

实例

update() 方法将 set2 中的项目插入 set1 中:

set1 = {"a", "b" , "c"}
set2 = {1, 2, 3}

set1.update(set2)
print(set1)

运行实例

注释:union() 和 update() 都将排除任何重复项。

还有其他方法将两个集合连接起来,并且仅保留重复项,或者永远不保留重复项,请查看此页面底部的集合方法完整列表。

set() 构造函数

也可以使用 set() 构造函数来创建集合。

实例

使用 set() 构造函数来创建集合:

thisset = set(("apple", "banana", "cherry")) # 请留意这个双括号
print(thisset)

运行实例

Set 方法

Python 拥有一套能够在集合(set)上使用的内建方法。

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

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

相关文章

Kubeadm介绍与使用Kubeadm搭建kubernetes集群环境

Kubeadm介绍 1.通俗点讲,kubeadm跟minikube一样,都是一个搭建kubernetes环境一个工具; 区别在于:minikube是搭建单机kubernetes环境的一个工具 kubeadm是搭建集群kubernetes环境的一个工具,这个常用; 2.对…

DocEE:一种用于文档级事件抽取的大规模细粒度基准 论文解读

DocEE: A Large-Scale and Fine-grained Benchmark for Document-level Event Extraction 论文:NAACL2022.pdf (tongmeihan1995.github.io) 代码:tongmeihan1995/DocEE: DocEE: A Large-Scale and Fine-grained Benchmark for Document-level Event Ext…

ABAP 辨析ON INPUT|REQUEST|CHAIN-INPUT|CHAIN-REQUEST

1、逻辑流 在屏幕开发中,存在如下逻辑流: PBO(Process Before Output):屏幕输出之前触发 PAI(Process After Input):用户在屏幕中执行操作触发 POH(Process On Help-…

5.8 BGP属性-AS-PATH

5.4.2配置BGP AS-PATH属性控制选路 1. 实验目的 熟悉BGP AS-PATH属性控制选路的应用场景掌握BGP AS-PATH属性控制选路的配置方法2. 实验拓扑 实验拓扑如图5-8所示: 图5-8:配置BGP AS-PATH属性控制选路 3. 实验步…

DADPS-Biotin-Alykne|2241685-22-1|DADPS生物素炔烃

DADPS(二烷氧基二苯基硅烷)生物素炔烃探针消除了链霉亲和素-生物素亲和纯化的主要限制。该试剂含有生物素部分和叠氮化物反应部分。DADPS 探针可用于生物分子标记和蛋白质组学研究。 DADPS biotin alkyne probe eliminates the main limitation of affin…

【Linux】软件安装(三)

目录 1. 软件安装 1.1 软件安装方式 1.2 安装JDK 1.3 安装Tomcat 1.4 安装MySQL 1.5 安装lrzsz 1. 软件安装 1.1 软件安装方式 在Linux系统中,安装软件的方式主要有四种,这四种安装方式的特点如下: 安装方式特点二进制发布包安装…

基于springboot校园二手市场平台

一、项目简介 本项目是一套基于springboot校园二手市场平台,主要针对计算机相关专业的正在做bishe的学生和需要项目实战练习的Java学习者。 包含:项目源码、数据库脚本等,该项目可以直接作为bishe使用。 项目都经过严格调试,确保…

YOLOv6-3.0-目标检测论文解读

文章目录摘要算法2.1网络设计2.2Anchor辅助训练2.3自蒸馏实验消融实验结论论文: 《YOLOv6 v3.0: A Full-Scale Reloading 》github: https://github.com/meituan/YOLOv6上版本参考 YOLOv6摘要 YOLOv6 v3.0中YOLOv6-N达到37.5AP,1187FPS&…

安装配置RabbitMQ(Win11)

一、安装依赖Erlang打开RabbitMQ官网:https://www.rabbitmq.com/点击Get Started点击Download Installation点击 Chocolatey or Installer点击? Erlang/OTP Version Tree点击win64下载完成后,右击“以管理员身份”安装配置Erlang环境变量 :…

linux的TCP连接数量最大不能超过65535个吗,那服务器是如何应对百万千万的并发的?

文章目录65535从哪来的,干啥的?最大并发tcp连接数是多少呢?如何标识一个TCP连接client最大tcp连接数server最大tcp连接数实际的tcp连接数0102TCP怎么建立连接,与端口号是什么关系?(1)Linux服务器…

【分享】订阅万里牛集简云连接器同步企业采购审批至万里牛系统

方案场景 面临着数字化转型的到来,不少公司希望实现业务自动化需求,公司内部将钉钉作为办公系统,万里牛作为ERP系统,两个系统之前的数据都储存在各自的后台,导致数据割裂,数据互不相通,人工手动…

springboot 自动注入源码分析spring.factories

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、铂金手写starter组件,开源starter组件结构 1.项目层级 2. 各个项目引入关系 3.项目侧使用 二、星耀源码跟踪分析 1.SpringApplication.run开…

sHMIctrl智能屏幕使用记录

手上有个案子,“按压机器人”,功能是恒定一个力按下一定时间。 屏幕选型使用“sHMIctrl”,一下记录使用过程中遇到的问题以及解决方法。 目录 问题1:按键控件做定时触发,模拟运行时触发不了。 问题2:厂家…

数字IC设计工程师是做什么的?

随着我国半导体产业的发展,近几年的新入行的从业人员,除了微电子相关专业的,还有就是物理、机械、数学、计算机等专业,很多人对这一高薪行业充满了好奇,那么数字IC设计工程师到底是做什么的? 首先来看看数…

Vue3.x+Element Plus仿制Acro Design简洁模式分页器组件

Vue3.xElement Plus仿制Acro Design简洁模式分页器组件 开发中难免会遇到宽度很窄的列表需要使用分页器的情况,这时若使用Element Plus组件的分页器会导致分页器内容超出展示的区域,而Element Plus组件中目前没有Acro Design那样小巧的分页器&#xff08…

AWS 中文入门开发教学 43- Cloud9 - 云端集成开发环境(IDE)

知识点 Cloud9 - 云的集成开发环境(IDE)的基本介绍 官网 https://aws.amazon.com/cn/cloud9/ 功能 只需一个浏览器即可进行编码,无需配置各种开发环境实时共同编写代码,团队协作直接通过终端访问AWS资源迅速开始新项目无缝集成CodeSeries(Commit,Bu…

vscode报错Vetur can‘t find ‘tsconfig.json‘ or ‘jsconfig.json‘

文章目录问题描述解决办法方案一方案二方案三方案四问题描述 今天启动vscode的时候发现vetur插件需要更新,重新加载以后点击 .vue后缀的文件发现就会弹出如下报错,并且此时写代码没有代码提示!! 用提示快捷键一直显示正在加载… …

日日顺于贞超:供应链数字化要做到有数、有路、有人

在供应链行业里面,关于“数字化”的讨论绝对是一个经久不衰的话题。 但关于这个话题的讨论又时常让人觉得“隔靴搔痒”,因为数字化变革为非一日之功,对于企业来说意味着投入和牺牲。企业既怕不做怕将来被淘汰,又怕投入过高、不达预…

适合运动的无线蓝牙耳机有哪些,运动无线蓝牙耳机推荐

最为适合运动的无线蓝牙耳机还是骨传导耳机最为合适,骨传导耳机在运动当中使用不仅更加安全,在耳机的佩戴方式上也是十分舒适的,开放式的佩戴设计,即使是长时间运动使用也依旧能够保证耳道舒适、佩戴牢固,下面就分享几…

圆角矩形的绘制和曲线均匀化

摘要: 圆角矩形是软件 UI 等视觉设计中的常见表达,一种常见的绘制方法是将矩形的四角替换为与边相切的四分之一圆弧,然而这种绘制方式会在连接处产生视觉上的切折感,这是因为圆弧和直线的连接处只满足 G1G^1G1 连续性。本文探究了…