列表,集合,字典的增、删、查、改方法对比

news/2025/10/25 22:04:17/文章来源:https://www.cnblogs.com/nxhujiee/p/19166037

在Python中,列表(List)、集合(Set)和字典(Dict)是三种常用的数据结构,它们在增、删、查、改操作上各有特点。以下是它们的详细对比:


1. 列表(List)

列表是有序的可变序列,支持重复元素。

操作 方法 示例 说明
append()
insert()
extend()
lst.append(10)
lst.insert(1, 20)
lst.extend([30, 40])
在末尾添加
在指定位置插入
合并另一个列表
remove()
pop()
del
clear()
lst.remove(10)
lst.pop(1)
del lst[0]
lst.clear()
删除指定值
删除并返回指定索引的元素
通过索引删除
清空列表
索引
index()
count()
in
lst[0]
lst.index(10)
lst.count(10)
10 in lst
通过索引访问
返回值的索引
统计出现次数
检查是否存在
索引赋值
切片赋值
lst[0] = 100
lst[1:3] = [200, 300]
直接修改元素
修改子列表

2. 集合(Set)

集合是无序的不重复元素集合,支持快速成员检测。

操作 方法 示例 说明
add()
update()
s.add(10)
s.update([20, 30])
添加单个元素
合并另一个可迭代对象
remove()
discard()
pop()
clear()
s.remove(10)
s.discard(10)
s.pop()
s.clear()
删除指定元素(不存在时报错)
安全删除(不存在时不报错)
随机删除一个元素
清空集合
in 10 in s 检查元素是否存在
无直接修改方法 需先删除再添加 集合无索引,需通过remove()+add()实现

3. 字典(Dict)

字典是无序的键值对集合(Python 3.7+后按插入顺序存储)。

操作 方法 示例 说明
赋值
update()
d["key"] = 10
d.update({"a": 1, "b": 2})
添加/修改键值对
合并另一个字典
del
pop()
popitem()
clear()
del d["key"]
d.pop("key")
d.popitem()
d.clear()
通过键删除
删除并返回值
删除并返回任意键值对(Python 3.7+为最后一对)
清空字典
键访问
get()
in
keys()/values()/items()
d["key"]
d.get("key", default)
"key" in d
d.keys()
通过键访问(不存在时报错)
安全获取值(可设默认值)
检查键是否存在
返回所有键/值/键值对
键赋值 d["key"] = 20 直接修改值

对比总结

特性 列表 集合 字典
有序性 有序 无序 有序(Python 3.7+)
重复元素 支持 不支持 键唯一,值可重复
索引访问 支持 不支持 通过键访问
修改方式 索引/切片赋值 需先删除再添加 直接键赋值
查找效率 O(n) O(1) O(1)(键查找)

使用场景建议

  • 列表:需要有序数据、允许重复、需索引或切片操作时。
  • 集合:需要去重、快速成员检测(如黑名单过滤)。
  • 字典:需要通过键快速访问值(如配置项、缓存)。

根据需求选择合适的数据结构能显著提升代码效率和可读性。

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

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

相关文章

linux磁盘管理-RAID介绍 - 详解

linux磁盘管理-RAID介绍 - 详解2025-10-25 21:54 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !importa…

详细介绍:语义网络(Semantic Net)对人工智能中自然语言处理的深层语义分析的影响与启示

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2023.2.24 操作系统期末考试回忆 山科 山东科技大学

5个简答题 1个6分30分操作系统的四个基本特征是什么?最基本特征是什么比较说明进程和程序的区别有哪些?列举几个操作系统中的时间换空间 空间换时间的例子SPOOLing 的组成,工作过程,以共享打印机为例某文件系统为一…

线段上随机取n个点的最大距离期望

Problem 在长为 $ a $ 的线段上独立地选取 $ n $ 个点($ n \geq 2 $),记相距最远的两点的距离为 $ X $,求 $ E(X) $。方法一:定义求解 记 $ A $ 为 $ X = t \(,\) B $ 为剩余 $ n-2 $ 个点在最远的两点间,则有 …

MusicFree 音乐

MusicFree是由大佬猫头猫开发的一款免费、开源的本地音乐播放器,同时支持Android、Windows、MacOS、Linux这几个客户端,很强大!MusicFree安装后就是一个纯粹的本地音乐播放器,但可以通过配置「插件」地址实现定制化…

P10老板一句‘搞不定就P0’,15分钟我用Arthas捞回1000万资损 - 指南

P10老板一句‘搞不定就P0’,15分钟我用Arthas捞回1000万资损 - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: &qu…

RuoYi-Cloud-Plus 数据权限实现原理解析

RuoYi-Cloud-Plus 数据权限实现原理解析 什么是数据权限? 数据权限是控制用户能够访问哪些数据的权限机制。在实际业务场景中,我们经常遇到这样的需求:普通员工只能查看自己创建的数据 部门经理可以查看本部门所有员…

详细介绍:JavaScript学习笔记(十五):ES6模板字符串使用指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Python毕业设计实例-基于python养老社区的查询预约架构(源码+LW+部署文档+全bao+远程调试+代码讲解等)

Python毕业设计实例-基于python养老社区的查询预约架构(源码+LW+部署文档+全bao+远程调试+代码讲解等)pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: blo…

第5天(中等题 滑动窗口、逆向思维)

打卡第五天 两道中等题题1423.可获得的最大点数思路: n 表示数组总数,先算出数组总和,用滑动窗口选出剩下连续(n-k)个数的最小和,用总和-剩余数最小和,即得拿走数的最大值.(逆向思维,正难则反) 耗时≈一小时 明天继续

Meet in the middle 学习笔记

由于蒟蒻在模拟赛写 DFS 挂掉了,所以来学 Meet in the middle 。 「引入」 Meet in the middle 算法没有正式译名,常见的翻译为「折半搜索」、「双向搜索」或「中途相遇」,以下称折半搜索。 它适用于输入数据较小,…

华为堡垒机

1、打开了VM虚拟机,导入相关的.ovf文件2、导入成功之后,不要直接开机。添加1块硬盘、网卡后再开机 3、开机之后,默认的用户为coreshell,密码为Admin@123 初次登录会提示更改密码密码: 请更改控制台密码,因为首次登…

[HZOI] CSP-S模拟38 赛后总结

不予置评[HZOI] CSP-S模拟38 赛后总结 不予置评 T1:最小生成树(tree) #include<bits/stdc++.h> #define lid (id << 1) #define rid (id << 1 | 1) #define Blue_Archive return 0 #define int lo…

集合常见操作示例

集合(Set)是数学和编程中常用的数据结构,用于存储唯一元素(无重复值)。以下是集合的常见操作及其示例,涵盖数学集合和编程实现(以Python为例):1. 创建集合数学表示:A = {1, 2, 3} Python示例:A = {1, 2, 3}…

深入解析:港大和字节携手打造WorldWeaver:以统一建模方案整合感知条件,为长视频生成领域带来质量与一致性双重飞跃。

深入解析:港大和字节携手打造WorldWeaver:以统一建模方案整合感知条件,为长视频生成领域带来质量与一致性双重飞跃。pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !importa…

虚拟机下 安装 ubuntu 18.04

VMware虚拟机中安装Ubuntu18.04(linux发行版)【超详细图文教程】_vmware安装ubuntu18.04-CSDN博客

MinIO快速入门

MinIO快速入门1. MinIO 介绍 MinIO 是全球领先的对象存储先锋,目前在全世界有数百万的用户。高性能 ,在标准硬件上,读/写速度上高达 183GB/秒和 171GB/秒,拥有更高的吞吐量和更低的延迟 可扩展性 ,为对象存储带来…

实用指南:【代码的暴力美学】-- C语言基础编程题_1

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

路径规划算法学习Day2:广度优先搜索算法(BFS)

路径规划算法学习Day2:广度优先搜索算法(BFS)前言 如果我想要用一群人来走迷宫,人的总数确定,从一点出发,每到一个节点就分出去一个人,那么我就可以根据要探索的层的数量来判断实际所需要的人数,应该是呈现一个…

集合与列表有何不同的使用场景,如何选择?

在Python中,集合(set)和列表(list)是两种不同的数据结构,各自有独特的使用场景和特性。选择它们的关键在于是否需要唯一性、顺序性或高效的查找/修改操作。以下是详细对比和选择建议:1. 核心特性对比特性 列表(…