集合(set)

1.概述

和数学上的集合基本是一样的,

特点:不允许有重复元素,可以进行交集,并集,差集的运算本质,无序,无重复元素的集合

格式:

集合符号:{}      形式:set = {元素,元素,元素,.....}

集合符号:{}      形式:dict = {key:value, key:value,.....}

2.获取长度

代码演示:

# 获取集合的长度 len()
set1 = {'关羽', '刘备'}
print(len(set1))  # 2
# 集合不能通过下标访问元素

3.添加元素

代码演示:

set2 = {12,345,633,21}
# 向集合中添加一个元素 add()
set2.add(98)
print(set2)# 通过update() 向集合中添加多个元素 追加的元素以列表的形式出现
set2.update([1,2,3])
print(set2)

4.删除元素

代码演示:

set2 = {12,345,633,21}
# pop() 随机删除一个
set2.pop()
print(set2)# remove() 删除指定的元素,传入的参数是要删除的元素,如果删除的元素不存在,会报错
# set2.remove(22)
set2.remove(2)
print(set2)# discard()删除指定的元素,传入的参数是要删除的元素,如果删除的元素不存在,不会报错
set2.discard(21)
# set2.discard(22)
print(set2)# clear() 清空集合
set2.clear()
#print(set2)

5.遍历

代码演示:

set2 = {12,345,633,21}
for i in set2:
print(i)

6.交集和并集和差集

代码演示:

# 集合:交集:intersection   并集:union   差集:differentset1 = {1, 2, 3, 4}
set2 = {5, 6, 7, 4}# 交集(&)
result = set1.intersection(set2)
print(result)# 并集(|)
result = set1.union(set2)
print(result)# 差集(-)
result1 = set1.difference(set2)
result2 = set2.difference(set1)
print(result1)
print(result2)

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

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

相关文章

解决间歇性 SSLPeerUnverifiedException 问题

问题背景 您在使用 SonarQube 与 GitHub Enterprise 进行拉取请求装饰时,遇到了间歇性的 javax.net.ssl.SSLPeerUnverifiedException 异常。具体错误信息如下: txt javax.net.ssl.SSLPeerUnverifiedException: Hostname XXXXXXX not verified (no certificates)at okhttp3…

记PLSQL链接Oracle数据库

一、环境 Windows环境安装plsql工具 Oracle部署在服务器上面。 由于我之前在本地Windows安装了一个Oracle数据库,结果导致之前已经在连接的PLSQL链接不上。 二、操作 PLSQL工具正常安装,主要就是一些Oracle的一些配置,和oracle客户端。 o…

HashTable, HashMap, ConcurrentHashMap 三者区别

目录 1. HashMap 2. HashTable 3. ConcurrentHashMap 1. HashMap HashMap 是 Java 中非常常用的一个数据结构,它主要用于存储 键值对(K,V)。 在JDK 1.7中,HashMap的实现是基于 Table数组 和 Entry链表 的组合。 从…

在 pyGTK 中使用 visibility_notify 事件

问题背景 在 Windows 系统中开发 pygtk 应用程序时,需要知道何时一个窗口被另一个窗口遮挡或显示,以便停止繁重的绘图进程。为此,可以使用 visibility_notify_event 信号来获取窗口可见性状态的改变。 解决方案 可以使用 visibility_notif…

【Linux】缓冲区

目录 一、初识缓冲区 二、用户级缓冲区 三、内核级缓冲区 四、内核级缓冲区 VS 用户级缓冲区 五、用户级缓冲区在哪里? 一、初识缓冲区 缓冲区是什么?可以简单理解成一部分内存。例如用户缓冲区(char arr[])、C标准库提供的缓冲区、操作系统提供的缓…

【算法】网络图中的dfs

快乐的流畅:个人主页 个人专栏:《算法神殿》《数据结构世界》《进击的C》 远方有一堆篝火,在为久候之人燃烧! 文章目录 引言一、单词搜索二、黄金矿工三、不同路径 |||四、图像渲染五、岛屿数量六、岛屿的最大面积七、被围绕的区域…

机器学习之sklearn基础教程(第二篇:数据预处理与特征工程)

机器学习之sklearn基础教程(第二篇:数据预处理与特征工程) 1. 数据预处理 数据预处理是机器学习中非常重要的一步,它包括对原始数据进行清洗、变换和归一化等操作,以使数据更适合用于机器学习模型的训练和预测。 以下…

冲!哪怕公域拓展流量超卷,数字化转型营销也勇往直前!

在这个数字时代,公域拓展流量的竞争已经激烈到令人咋舌的程度!然而,开利网络蚓链数字化转型营销解决方案经过上千家客户实践告诉我们,即使面对如此残酷的局面,我们也必须勇敢地去面对,利用想得到的合规合法…

三磷酸腺苷(ATP)制备方法众多 主要应用于生化研究以及医药领域

三磷酸腺苷(ATP)制备方法众多 主要应用于生化研究以及医药领域 三磷酸腺苷(ATP)又称腺嘌呤核苷三磷酸、腺苷三磷酸,化学式为C10H16N5O13P3,是一种高能磷酸化合物。腺苷三磷酸外观呈白色粉末,无特…

2025秋招Java还是c++?

一、我的编程经 说说我的编程经历,在C和Java之间我经历了几个阶段: 大学期间,我浅尝辄止地学习了一段时间的Java,但后来放弃了,开始学习C/C。本科毕业后,我选择攻读硕士学位,并一直专注于C的学…

集成了Gemini的Android Studio,如虎添翼

今天将Android Studio升级到最新版(Jellyfish)。发现在new features中有一条: Code suggestions with Gemini in Android Studio 打开路径为: View > Tool Windows > Gemini 支持多国语言,英文、中文都能正确理解…

盘点Lombok的几个骚操作,你绝对没用过

本文不讨论对错,只讲骚操作。 有的方法看看就好,知道可以这么用,但是否应用到实际开发中,那就仁者见仁,智者见智了。 一万个读者就会有一万个哈姆雷特,希望这篇文章能够给您带来一些思考。 耐心看完&…

PPT为何无法复制粘贴?附解决办法!

PPT文件里的内容无法复制,或者复制后无法粘贴,这是怎么回事呢? 这种情况,一般是因为PPT被设置了保护,设置了以“只读方式”打开,就无法进行复制粘贴了。PPT的“只读方式”不同,解决方法也不同&…

STM32 HAL TM1637使用

TM1637属于一种带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路。 本文主要使用MCU是STM32 ,CubeMXKeil5进行开发,使用HAL库 简介:TM1637可以带动16个按键以及做数码管驱动 TM1637.C #include "TM163…

Java入门基础学习笔记25——死循环和循环嵌套

死循环: 可以一直执行下去的一种循环,如果没有干预不会停下来。 死循环的写法: 例: package cn.ensource.loop;public class EndLessLoopDemo5 {public static void main(String[] args) {// 目标;掌握死循环的写法w…

力扣127.单词接龙讲解

距离上一次刷题已经过去了.........嗯............我数一一下............整整十天,今天再来解一道算法题 由于这段时间准备简历,没咋写博客。。今天回来了!!!!!!!&…

C++14 新特性:函数返回值类型推导

C11 的特性介绍暂时告一段落,从今天起,我继续介绍 C14 引入的新特性。 C14 进一步增强了 C11 的特性,其中一个改进是对函数返回值类型的自动推导能力的扩展。在 C14 中,编译器可以根据函数返回语句推导出函数的返回类型。 函数返…

【React】如何让函数式组件也能使用state——useState(Hooks)

React的函数式组件不同于类式组件,函数式组件没有自己的 this,看似没有操作state的能力 但是React官方提供了一个Hooks叫useState,它解决了函数式组件和类式组件的差异,让函数式组件拥有了类式组件所拥有的 state ,同时…

在win10折腾Flowise:部署和尝试

Flowise 是一种低代码/无代码拖放工具,旨在让人们轻松可视化和构建 LLM 应用程序。 本地部署 操作系统: win10 由于网络、操作系统等各种未知问题,使用npm install -g flowise的方式,尝试了很多次,都没有部署成功&am…

McCabe度量法

McCabe度量法,又称为环路度量(Cyclomatic Complexity)或循环复杂度,是由Thomas J. McCabe Sr.在1976年提出的一种用于软件工程中的程序复杂性度量方法。这种方法基于程序的控制流图(Control Flow Graph, CFG&#xff0…