【Python语言】集合的使用方法总结

目录

1、集合基本知识:

2、定义

2.1 定义集合变量

2.2 定义空集合

3、集合的常用操作

3.1 定义集合

3.2 添加新元素

3.3 移除元素

3.4 从集合中随机取出元素

3.5 清空集合

3.6 取两个集合的差集

3.7 消除两个集合的差集

3.8 两个集合合并

3.9 统计集合元素数量

3.10 集合的遍历

4、集合的常用功能一览


1、集合基本知识:

1)不支持元素重复,并且输出内容无序

2)标识符:{  }

2、定义

{元素,元素,元素,,,,元素}

2.1 定义集合变量

 变量名称 = {元素,元素,元素,,,,,,元素}

2.2 定义空集合

 变量名称 = set()

3、集合的常用操作

3.1 定义集合

不能重复,且内容无序;不支持下标索引访问

my_set = {"hello", "林夏",1,2,3,4,5,"林夏",5,5,5} #定义集合
my_set_empty = ()
print(f"my_set的内容是:{my_set},类型是:{type(my_set)}")

 3.2 添加新元素

语法:集合.add(元素),将指定元素添加到集合中

集合本身被修改,添加了新元素

my_set = {"hello", "World"} #定义集合
my_set.add("林夏")
print(my_set)

3.3 移除元素

语法:集合.remove(元素),将指定元素从集合内移除

集合本身被修改,移除了元素

my_set = {"hello", "World","林夏"}
my_set.remove("World") #移除集合中的元素World
print(my_set)

3.4 从集合中随机取出元素

语法:集合.pop() 从集合中随机取出一个元素

会得到一个元素的结果,集合本身被修改,元素被移除

3.5 清空集合

语法:集合.clear() 清空集合

my_set = {"hello", "World","林夏"}
my_set.clear() #清空集合
print(my_set)

3.6 取两个集合的差集

语法:集合1.difference(集合2),取出集合1和集合2的差集得到一个新的集合,集合1和集合2本身不变

set1 = {1,3,5}
set2 = {2,3,4,5,6}
set3 = set1.difference(set2) #求集合1和集合2的差集
print(set1)
print(set2)
print(set3) #新集合,差集

3.7 消除两个集合的差集

语法:集合1.difference_update(集合2)

对比集合1和集合2,在集合1内,删除和集合2相同的元素

集合1被修改,集合2不变(主要是集合1发生改变)

set1 = {1,2,3}
set2 = {1,5,6}
set1.difference_update(set2) #在集合1内消除与集合2相同的元素
print(set1) #打印被修改后的集合1
print(set2) #打印集合2

3.8 两个集合合并

语法:集合1.union(集合2)

将集合1和集合2组成新集合

得到新集合,集合1和集合2都不改变

set1 = {1,2,3}
set2 = {1,5,6}
set3 = set1.union(set2) #将集合1和集合2合并成新集合
print(set1)
print(set2)
print(set3) 

3.9 统计集合元素数量

语法:len(集合)

set1 = {1,2,3,3,4,4,5,5,6,6,7,8}
num = len(set1)
#集合有去重操作,重复的元素只算做一个
print(f"集合内的元素数量有:{num}个") 

3.10 集合的遍历

集合不支持下标索引,不能用while循环,只可以用for循环进行遍历

set1 = {1,2,3,3,4,4,5,5,6,6,7,8}
#for循环遍历集合
for element in set1:print(f"集合的元素有:{element}")

4、集合的常用功能一览

1)集合.add(元素)向集合内添加一个元素
2)集合.remove(元素)移除集合内指定的元素
3)集合.pop(元素)从集合中随机取出一个元素
4)集合.clear(元素)将集合清空
5)集合1.difference(集合2)得到一个心机和,内含2个集合的差集,原本的2个集合都不改变
6)集合1.difference_update(集合2)在集合1中,删除集合2中存在的元素,集合1被修改,集合2不变
7)集合1.union(集合2)得到一个新集合,内含2个集合的全部元素,2个集合内容不变
8)len(集合)得到一个整数,记录了集合去重后的元素数量

9)标示符

      列表:        [ ]

      元组:        ( )

     字符串:     "  "

      集合:        { }

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

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

相关文章

软件外包开发质量控制方法

在软件外包开发项目中,质量控制是确保交付的软件符合预期质量标准的关键步骤。以下是一些常用的软件外包开发质量控制方法,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 需求明确&#x…

【第28例】IPD体系进阶 | 需求管理:需求实现过程

目录 简介 内容详解 CSDN学院相关推荐 作者简介 简介 继续 IPD 体系中的需求管理相关的专题。 先来看看整个需求管理涉及的过程内容: 需求管理流程主要包含五个阶段: 需求收集; 需求分析; 需求分发/分配;

构建数字孪生的四大挑战

如果不能解决由数字孪生带来的开发难题,那么企业就无法享受这种技术便利。 数字孪生已经成为企业当前面对的一大机遇,其核心在于利用虚拟副本中的分析数据对未来业务事件开展预测。这不仅能够大大降低决策难度,同时也有助于提升决策效果。 然…

“利用义乌购API揭秘跨境贸易商机:一键获取海量优质商品列表!“

义乌购API可以根据关键词取商品列表。通过调用义乌购API的item_search接口,传入关键词参数,可以获取到符合该关键词的商品列表。 以下是使用义乌购API根据关键词取商品列表的步骤: 注册义乌购开发者账号并获取授权码和密钥。在代码中导入义…

redis教程 二 redis客户端Jedis使用

文章目录 Redis的Java客户端-JedisJedis快速入门创建工程:引入依赖:建立连接测试:释放资源Jedis连接池创建Jedis的连接池改造原始代码 Redis的Java客户端-SpringDataRedis快速入门导入pom坐标配置文件测试代码 数据序列化器StringRedisTempla…

【CIO人物展】黄淮学院副CIO周鹏:构建数智化平台赋能学校高质量发展

周鹏 本文由黄淮学院副CIO周鹏投递并参与《2023中国数智化转型升级优秀CIO》榜单/奖项评选。丨推荐企业—锐捷网络 大数据产业创新服务媒体 ——聚焦数据 改变商业 黄淮学院是2004年经教育部批准成立的一所省属全日制普通本科高校。学校位于素有“豫州之腹地、天下之最中”之美…

【Python】批量下载素材酷视频资源

【需求】 做视频精彩需要用到梗图视频等,但是素材酷上面的视频没有搜索功能,每次用起来还要去下载也很麻烦,下载只能一个一个下载也很麻烦,下要搞一个能够批量下载的功能,然后把下载的资源全部放进万兴喵影编辑器的云空间,这样就可以做到随做随查随用了。 【效果】 目…

springboot 连接西门子plc,读取对应的值,并修改到数据库

springboot 连接西门子plc,读取对应的值,并修改到数据库 需求:服务器连接plc,读取数据,之后写入到数据库,但是要求速度很快,而且plc中命令对应的值是不断变化的,这个变化&#xff0c…

深度学习框架TensorFlow.NET环境搭建1(C#)

测试环境 visual studio 2017 window10 64位 测试步骤如下: 1 新建.net framework控制台项目,工程名称为TensorFlowNetDemo,.net framework的版本选4.7.2,如下图: 2 分别安装TensorFlow.NET包(先装)和SciSharp.…

QT+SQLite数据库配置和使用

一、简介 1.1 SQLite(sql)是一款开源轻量级的数据库软件,不需要server,可以集成在其他软件中,非常适合嵌入式系统。Qt5以上版本可以直接使用SQLite(Qt自带驱动)。 二、下载和配置 2.1 SQLite下载…

Docker Compose安装milvus向量数据库单机版-milvus基本操作

目录 安装Ubuntu 22.04 LTS在power shell启动milvus容器安装docker desktop下载yaml文件启动milvus容器Milvus管理软件Attu python连接milvus配置下载wget示例导入必要的模块和类与Milvus数据库建立连接创建名为"hello_milvus"的Milvus数据表插入数据创建索引基于向量…

7.spark sql编程

概述 spark 版本为 3.2.4,注意 RDD 转 DataFrame 的代码出现的问题及解决方案 本文目标如下: RDD ,Datasets,DataFrames 之间的区别入门 SparkSession创建 DataFramesDataFrame 操作编程方式运行 sql 查询创建 DatasetsDataFrames 与 RDDs 互相转换 使用…

动态规划(Dynamic Programming)—— Java解释

一、基本思想 动态规划(Dynamic Programming)算法的核心思想是:将大问题划分为小问题进行解决,并将子问题的求解结果存储起来避免重复求解,从而一步步获取最优解的处理算法。 动态规划算法与分治算法类似,其基本思想也是将待求解…

计算机毕设 基于大数据的社交平台数据爬虫舆情分析可视化系统

文章目录 0 前言1 课题背景2 实现效果**实现功能****可视化统计****web模块界面展示**3 LDA模型 4 情感分析方法**预处理**特征提取特征选择分类器选择实验 5 部分核心代码6 最后 0 前言 🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕…

在 Python 中使用 Selenium 按文本查找元素

我们将通过示例介绍在Python中使用selenium通过文本查找元素的方法。 在 Python 中使用 Selenium 按文本查找元素 软件测试是检查应用程序是否满足用户需求的技术。 该技术有助于使应用程序成为无错误的应用程序。 软件测试可以手动完成,也可以通过某些软件完成。…

AI:60-基于深度学习的瓜果蔬菜分类识别

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…

Unity地面交互效果——3、曲面细分基础知识

大家好,我是阿赵。   之前介绍了使用动态法线贴图混合的方式模拟轨迹的凹凸感,这次来讲一下更真实的凹凸感制作。不过在说这个内容之前,这一篇先要介绍一下曲面细分着色器(Tessellation Shader)的用法。 一、为什么要做曲面细分 之前通过法…

docker离线部署

docker离线部署 1、目的 在可以连接互联网的情况下,可以在线安装Docker《Linux下Docker安装部署》,如果遇到内网服务器就没有办法进行在线安装,那么需要使用离线安装的方法。 2、下载安装包 创建工作文件夹: mkdir /opt/dock…

window10 定时任务

window10 定时任务 1、背景2、目标3、思路4、实操4.1、设置定时任务4.2、配置策略4.3、验证 1、背景 项目上由于业务调试需要,开具了一台window10系统,此台window10为项目组公共使用,为防止误操作分配了不通的账号,日常使用各自账…

Redis-使用java代码操作Redis->java连接上redis,java操作redis的常见类型数据存储,redis中的项目应用

java连接上redisjava操作redis的常见类型数据存储redis中的项目应用 1.java连接上redis package com.zlj.ssm.redis;import redis.clients.jedis.Jedis;/*** author zlj* create 2023-11-03 19:27*/ public class Demo1 {public static void main(String[] args) { // …