news 2026/1/14 1:02:27

【Python】字典(dict)、列表(list)、元组(tuple)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【Python】字典(dict)、列表(list)、元组(tuple)

在 Python 中,{}[]()是三种核心的字面量语法,分别对应字典(dict)列表(list)元组(tuple)三种内置对象(特殊场景下{}也可表示集合 set),以下是详细说明:

一、[]:列表(list)—— 可变有序序列

核心特性

  • 可变(Mutable):可动态增删改元素;
  • 有序(Ordered):元素按插入顺序排列,支持索引/切片;
  • 异构:可存储不同类型的元素(数字、字符串、对象等)。

基础用法

# 空列表empty_list=[]# 非空列表fruits=["apple","banana",100,True]# 可变特性(修改元素)fruits[1]="orange"# 结果:["apple", "orange", 100, True]# 新增元素fruits.append("grape")# 删除元素delfruits[2]

二、():元组(tuple)—— 不可变有序序列

核心特性

  • 不可变(Immutable):一旦创建,元素不能增删改(元素本身若为可变对象,其内部可修改);
  • 有序(Ordered):支持索引/切片,性能略优于列表;
  • 异构:同样支持多类型元素;
  • 语法细节:单元素元组需加逗号((1,)),空元组直接()

基础用法

# 空元组empty_tuple=()# 单元素元组(必须加逗号)single_tuple=(10,)# 多元素元组(括号可省略,靠逗号识别)colors=("red","green","blue")nums=1,2,3# 等价于 (1,2,3)# 不可变特性(报错)# colors[0] = "black" # TypeError: 'tuple' object does not support item assignment# 元素为可变对象时,内部可修改t=([1,2],3)t[0].append(4)# 结果:([1,2,4], 3)

三、{}:字典(dict)/ 集合(set)—— 两种场景

场景1:字典(dict)—— 可变键值对映射(默认)

核心特性

  • 可变(Mutable):可增删改键值对;
  • 无序(Python 3.7+ 按插入顺序保存);
  • 键(key)唯一且不可变(必须是哈希类型:字符串、数字、元组等),值(value)可任意;
  • 空字典直接用{}表示。

基础用法

# 空字典empty_dict={}# 非空字典person={"name":"Alice","age":25,"is_student":False}# 修改值person["age"]=26# 新增键值对person["city"]="Beijing"# 删除键值对delperson["is_student"]
场景2:集合(set)—— 可变无序不重复集合

核心特性

  • 可变(Mutable):可增删元素;
  • 无序(Unordered):不支持索引;
  • 元素唯一(自动去重)且不可变(哈希类型);
  • 空集合必须用set()(而非{}{}优先表示空字典)。

基础用法

# 空集合(必须用 set())empty_set=set()# 非空集合nums={1,2,3,3,4}# 自动去重:{1,2,3,4}# 新增元素nums.add(5)# 删除元素nums.remove(2)

核心总结表

符号主要对象核心特性空值写法
[]列表可变、有序、异构[]
()元组不可变、有序、异构()
{}字典可变、键值对、键唯一不可变{}
{}集合可变、无序、元素唯一不可变set()(非{}

关键注意点

  1. {}优先表示空字典,空集合必须用set()
  2. 元组的“不可变”是指元素引用不可变,若元素是列表/字典等可变对象,其内部可修改;
  3. 集合/字典的键要求是“哈希类型”(不可变类型),列表、字典等不可哈希的类型不能作为集合元素/字典键。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/15 19:20:12

【内存优化终极指南】:揭秘高性能系统背后的8大内存管理技术

第一章:内存优化的核心概念与重要性内存优化是提升系统性能和应用程序响应速度的关键环节。在资源受限或高并发场景下,不合理的内存使用可能导致应用崩溃、延迟升高甚至服务不可用。因此,理解内存管理的基本机制并实施有效的优化策略至关重要…

作者头像 李华
网站建设 2026/1/10 15:31:29

AI Agent 十问十答,降低认知摩

新兴技术的出现,总会伴随着术语洪流和流派之争,带来认知摩擦。 近期 OpenAI 发布了《A Practical Guide to Building Agents》电子书[1],随后 Langchain 负责人驳斥了电子书中的一些观点,在官方博客发布了《How to think about a…

作者头像 李华
网站建设 2025/12/15 19:17:46

布袋检漏仪在工业领域的实际应用与重要性

在当今的工业生产中,环境保护和生产效率的平衡是企业追求可持续发展的关键。其中,布袋除尘器作为一种常见的工业粉尘处理设备,其运行效果的监测至关重要。而布袋检漏仪作为一种专门用于检测布袋除尘器是否存在破损或泄漏的精密仪器,在工业领域发挥着不可或缺的作用。 一、…

作者头像 李华
网站建设 2026/1/13 8:45:02

你还在手动处理时间误差?自动化PHP时间戳校准让农业IoT数据零偏差

第一章:农业物联网中PHP时间戳校准的必要性在农业物联网系统中,传感器节点广泛部署于田间地头,用于采集温度、湿度、土壤水分等关键环境数据。这些数据的时间准确性直接影响到后续的分析决策,如灌溉控制、病虫害预警等。由于设备可…

作者头像 李华
网站建设 2026/1/12 6:10:39

仅限高级工程师掌握的技能:Rust扩展PHP函数注册的7个关键步骤

第一章:Rust扩展PHP函数注册的核心概念 在现代Web开发中,PHP作为一门动态脚本语言广泛用于服务器端逻辑处理。然而,其性能瓶颈在高并发或计算密集型场景中逐渐显现。通过使用Rust编写PHP扩展,开发者可以在保持PHP易用性的同时&…

作者头像 李华
网站建设 2026/1/10 5:16:04

java计算机毕业设计实体店管理系统 基于Java的线下门店综合运营平台 SpringBoot+MySQL服饰实体店铺数字化管理系统

计算机毕业设计实体店管理系统mz6v49(配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。当线上流量红利见顶、线下体验价值回潮,实体门店的“人货场”亟需一套轻盈高效的…

作者头像 李华