首页 > 编程语言 >python基础(集合)

python基础(集合)

时间:2024-11-01 08:48:17浏览次数:3  
标签:set python 元素 基础 print 集合 new my

学习目标:集合的概念,创建,增加元素,移除元素,运算(交集,并集,差集,对称差集),推导式

一.集合的概念:Python中的集合(set)是一种无序、无重复元素的数据结构,它的元素是不可变的(可哈希的)

  1. 集合是由大括号{}包围的元素集合
  2. 如果定义空集合,即不包含任何元素,必须使用set()函数定义

二.集合的创建
1.可以使用花括号 {} 或 set() 函数创建一个集合。
例如:

# 使用花括号创建集合
my_set = {1, 2, 3}
#使用set()函数创建集合
my_set = set([1, 2, 3])

三.添加元素,移除元素
1.使用add()方法添加元素
例如:

my_set = {1, 2, 3}
my_set.add(4)
print(my_set) 	#{1, 2, 3, 4}

2.使用remove()方法移除元素
例如:

my_set = {1, 2, 3, 4}
my_set.remove(4)
print(my_set) #{1, 2, 3}

四.集合的运算
1.交集:是指两个或多个集合中共同存在的元素
例如:

my_set = {"a", "b", "c", "d"}
my_set_new = {"a", "e", "f", "g"}
print(my_set & my_set_new) #{'a'}

2.并集:是指将两个或多个集合中的所有元素合并在一起,形成一个新的集合。合并后的集合包含原始集合中的所有元素,并且不包含重复的元素
例如:

my_set = {"a", "b", "c", "d"}
my_set_new = {"a", "e", "f", "g"}
print(my_set | my_set_new) #{'d', 'f', 'e', 'g', 'b', 'a', 'c'}

3.差集:指的是两个集合之间的差异部分,即从一个集合中剔除另一个集合中所共有的元素后剩余的元素组成的集合
例如:

my_set = {"a", "b", "c", "d"}
my_set_new = {"a", "e", "f", "g"}
print(my_set - my_set_new) #{'b', 'c', 'd'}

4.对称差集:对称差集,又称为异或集,是指两个集合的元素中,只包含在其中一个集合中的元素构成的集合。
例如:

my_set = {"a", "b", "c", "d"}
my_set_new = {"a", "e", "f", "g"}
print(my_set ^ my_set_new) #{'d', 'c', 'e', 'f', 'b', 'g'}

五.推导式:集合推导式和列表推导式基本没有区别,但集合推导式可以去除重复元素,并且不是用"[]“,而是使用大口号”{}"
1.正常推导式
例如:

evens = {x for x in range(1, 11) if x % 2 == 0}
print(evens)  # 输出:{2, 4, 6, 8, 10}
evens = {x**2 for x in range(1, 11) if x % 2 == 0}
print(evens)  # 输出:{2, 4, 6, 8, 10}

2.去除列表里的重复元素

list_1 = [1,1,2,2,3,3,4,5]
unique_num ={i for i in list_1} #将列表元素循环,并在集合里去重元素
print(unique_num) #{1, 2, 3, 4, 5}
#再次生成列表
list_new =list(unique_num)
print(list_new)
#代码优化
list_new = list({i for i in list_1})
print(list_new)

总结:你可以有效地使用Python中的集合来处理数据,进行集合运算,以及利用集合推导式来简化代码和提高效率。

标签:set,python,元素,基础,print,集合,new,my
From: https://blog.csdn.net/qq_37789343/article/details/143379409

相关文章

  • 基于python的语音识别与蓝牙通信的温控系统
    基于python的语音识别与蓝牙通信的温控系统大家好我是君君学姐,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于python的语音识别与蓝牙通信的温控系统。项目源码以及部署相关请联系小村学长,文末附上联系信息。......
  • python利用openpyxl处理excel(应用案例一)
    一前言环境:win10python3.8二应用案例如上要实现这样一张表格1分析不能去指定在某个位置去插入某个字段,如在a1去插入商品,a2去插入类型。不能这样做,给出字段后,要自动挨个插入2如一级字段批次信息要与它下面的二级字段相对应,二级字段占据了三列,一级字段也要占3列,且要合......
  • 零基础Linux入门教程:系统目录结构&文件管理命令
    Linux文件管理命令与系统目录结构1.重要文件目录根目录/(根目录)系统目录/bin:存放基本命令/sbin:存放系统管理命令/etc:系统配置文件/dev:设备文件/proc:进程和内核信息/var:易变文件,如日志/lib//lib64:共享库文件用户目录/home:用户家目录/root:......
  • JavaScript语法基础——变量,数据类型,运算符和程序控制语句(小白友好篇,手把手教你学会!)
     一、JavaScript概述JavaScript是一种高级编程语言,常用于网页开发和服务器端应用程序。它是一种动态类型语言,可以在浏览器中直接解释执行,而不需要编译。脚本(Script)是一种与计算机程序相关的指令集或代码块,用于执行特定的任务或操作。脚本通常用于自动化重复性的任务或进行特......
  • python+flask计算机毕业设计骨科门诊患者档案管理系统(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于骨科门诊患者档案管理系统的研究,现有研究主要集中在综合性医院患者档案管理方面,专门针对骨科门诊患者档案管理的研究较少。在国内......
  • 每日python小白:如何打印九九乘法表?
    一、代码展示以防各位心急,咱先搬上来代码:代码一:初级版foriinrange(1,10):forjinrange(1,10):print("%d*%d=%d"%(i,j,i*j),end="")print()效果:代码二:完整版foriinrange(1,10):forjinrange(1,i+1):print("%d*%d=%d"......
  • 跟着阿灵学前端——CSS 基础 (2)
    1.CSS长度单位px:像素em:相对元素font-size的倍数rem:相对根字体大小的倍数,html标签就是根。%:相对父元素计算的百分比。CSS中设置长度,必须加单位,否则样式无效。2.元素的显示模式块元素(block)又称:块级元素特点:在页面中独占一行,不会与任何元素共用一行,是从上到......
  • 【深度学习】从公式推导来深入理解误差反向传播算法2:《深度学习入门基于Python的理论
    《深度学习入门基于Python的理论与实现》中实现了2层全连接神经网络的代码对MNIST数据集的28x28像素0-9手写数字灰度图像进行分类,本文将重点对代码中的two_layer_net类的gradient函数中的误差反向传播的代码进行公式推导验证。验证小批量数据的交叉熵损失函数对第2层权重......
  • 【操作系统实验课】Linux操作基础
    1.打开UbuntuUbuntu-22.04虚拟机安装-CSDN博客打开虚拟机软件启动其中的Ubuntu22.04打开Ubuntu系统终端2.创建目录和文件创建test3目录:在终端中输入命令:mkdir/test3。此命令用于在根目录下创建test3目录。(注意在命令中,“mkdir”是创建目录的命令,“/test3”是要......
  • 学习python第十天
    今天学习了闭包,语法糖(列表推导式),装饰器,迭代器,生成器相关笔记如下'''知识点:1.闭包2.语法糖(列表推导式)3.装饰器4.迭代器5.生成器'''#高阶函数#deffunc(a):#res=a()#func2()#print(a())##deffunc2():#return"python"#......