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

Python基础总结(六)之集合

文章目录

    • 一、集合的格式
    • 二、集合的操作
      • 2.1 增加元素
      • 2.2 删除元素
        • 2.2.1 clear()方法
        • 2.2.2 remove()方法
        • 2.2.3 pop()方法

一、集合的格式

集合是由不重复元素组成的无序容器,就是说集合中的元素是没有顺序且是不重复的。
集合的创建可以使用{}或者set()函数

# 使用{}创建集合
s1 = {"peter", "sam", "john", "merry"}
print(s1)
# {'peter', 'john', 'merry', 'sam'}
s2 = ["peter", "sam", "john", "merry"]
print(set(s2))
# {'peter', 'john', 'merry', 'sam'}

集合中的元素是不可重复的

s1 = {"peter", "sam", "john", "merry", "sam"}
print(s1)
# {'john', 'peter', 'merry', 'sam'}

二、集合的操作

2.1 增加元素

集合的增加元素可以使用add()方法。

s1 = {"peter", "sam", "john", "merry", "sam"}
s1.add("tom")
print(s1)
# {'sam', 'merry', 'tom', 'john', 'peter'}

2.2 删除元素

2.2.1 clear()方法

clear()方法同字典一样,都是直接清空元素。

s1 = {"peter", "sam", "john", "merry", "sam"}
s1.add("tom")
s1.clear()
print(s1)
# set()
2.2.2 remove()方法

remove()方法会从集合中移除指定的元素,如果元素不存在则抛出异常

s1 = {"peter", "sam", "john", "merry", "sam", "tom"}
s1.remove("sam")
print(s1)
{'john', 'peter', 'tom', 'merry'}

如果元素不存在,则抛出异常

s1 = {"peter", "sam", "john", "merry", "sam", "tom"}
s1.remove("ali")
print(s1)
# KeyError: 'ali'
2.2.3 pop()方法

pop()方法会随机移除一个元素,并返回,如果集合为空则抛出异常。

s1 = {"peter", "sam", "john", "merry", "sam", "tom"}
s1.pop()
print(s1)
# {'merry', 'peter', 'tom', 'sam'}
s2 = {}
s2.pop()
print(s2)
# TypeError: pop expected at least 1 argument, got 0
http://www.dtcms.com/a/139625.html

相关文章:

  • 《如何用 Function 实现动态配置驱动的处理器注册机制?》
  • 多重背包转01背包优化
  • Linux:进程:进程状态
  • ServletContextAttributeListener 的用法笔记250417
  • StarCraftII SMAC 环境配置的debug日记
  • #include <bits/stdc++.h> 头文件解析 [特殊字符]‍[特殊字符]
  • STM32F103_HAL库+寄存器学习笔记17 - CAN中断接收 + 接收CAN总线所有报文
  • Wireshark TS | 异常 ACK 数据包处理
  • 新手拥有一个服务器能做什么?
  • 赋能能源 | 智慧数据,构建更高效智能的储能管理系统
  • 东莞SMT贴片加工工艺升级与生产优化
  • Win10如何一键切换IP地址教程
  • 【零基础】基于DeepSeek-R1与Qwen2.5Max的行业洞察自动化平台
  • 实现定时发送邮件,以及时间同步
  • 【Unity】UI点击事件处理器
  • CS144 Lab0实战记录:搭建网络编程基础
  • 【Leetcode 每日一题 - 补卡】1534. 统计好三元组
  • HBuilder安装PHP开发插件教程
  • 浔川AI翻译v7.0更新预告
  • 深度解析Spring @Scheduled:从基础使用到高级定制
  • Java反射知识点学习笔记
  • VS Code 安装及常用插件
  • 【计算机视觉】OpenCV实战项目-AdvancedLaneDetection 车道检测
  • NLP高频面试题(四十六)——Transformer 架构中的位置编码及其演化详解
  • RPCRT4!OSF_CCALL::ActivateCall函数分析之RPCRT4!OSF_CCALL结构中的Bindings--RPC源代码分析
  • 2025中国移动云智算大会回顾:云智变革,AI+跃迁
  • PHP开发环境搭建(Hbuider+phpstudy)
  • 数据通信学习笔记之OSPF配置命令
  • 知识图谱中医知识问答系统|养生医案综合可视化系|推荐算法|vue+flask+neo4j+mysql
  • MATLAB 程序实现了一个层次化光网络的数据传输模拟系统