news 2026/4/21 11:52:28

Python中的列表和元组

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python中的列表和元组

下面用清晰、系统、面试也适用的方式,详细介绍 Python 中的列表(list)元组(tuple)

一、列表 list

1. 基本概念

  • 使用方括号[]表示
  • 有序、可变、可重复
  • 可存放任意类型数据(int、str、list、对象等)

python

运行

lst = [1, 2, 3, "apple", True, [4,5]]

2. 常用操作(重点)

访问元素

python

运行

lst[0] # 第一个元素 lst[-1] # 最后一个 lst[1:3] # 切片 [2,3]

添加元素

python

运行

lst.append(6) # 末尾添加 lst.insert(0, 0) # 指定位置插入 lst.extend([7,8])# 扩展列表

修改元素

python

运行

lst[0] = 100 # 直接赋值修改

删除元素

python

运行

lst.pop() # 删除最后一个 lst.pop(0) # 删除指定索引 lst.remove(3) # 删除第一个值为3的元素 del lst[1] # 删除指定位置 lst.clear() # 清空

其他常用方法

python

运行

len(lst) # 长度 lst.index(2) # 查找索引 lst.count(2) # 计数 lst.sort() # 排序 lst.reverse() # 反转

3. 特点

  • 可变(mutable):可增删改
  • 占用空间稍大,有额外扩容空间
  • 适合频繁修改的数据

二、元组 tuple

1. 基本概念

  • 使用圆括号()表示
  • 有序、不可变、可重复
  • 同样可存放任意类型

python

运行

t = (1, 2, 3, "apple")

单个元素的元组必须加逗号:

python

运行

t = (1,) # 正确 t = (1) # 错误,只是整数1

2. 常用操作

访问(和列表一样)

python

运行

t[0] t[-1] t[1:3]

不可修改

python

运行

t[0] = 10 # 报错!元组不可变

可用方法很少

python

运行

len(t) t.index(2) t.count(2)

3. 特殊:元组里的可变对象可以变

元组本身不可变,但如果里面是 list,list 可变:

python

运行

t = (1, [2,3]) t[1].append(4) # 可以

4. 特点

  • 不可变(immutable)
  • 访问速度更快
  • 占用内存更小
  • 可做字典的 key
  • 线程更安全

三、列表 vs 元组 核心对比

表格

特性列表 list元组 tuple
符号[]()
可变性可变(增删改)不可变
方法数量极少
性能一般更快、更省内存
能否做字典 key不能
使用场景频繁修改的数据固定不变的数据、配置项

四、相互转换

python

运行

lst = [1,2,3] t = tuple(lst) # list → tuple t = (1,2,3) lst = list(t) # tuple → list

五、使用场景总结

  • 用 list:需要频繁添加、删除、修改的数据,如任务列表、用户列表、临时缓存等。

  • 用 tuple:数据一旦定义就不变,如坐标、配置项、函数返回多个值、字典 key 等。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/21 11:49:38

别再搞混了!C++里printf和setprecision控制小数位,到底哪个更好用?

C小数位控制终极指南:printf与setprecision深度对比 在金融交易系统开发中,一个简单的四舍五入错误可能导致数百万美元的损失;在游戏物理引擎中,浮点数精度差异可能引发角色穿墙的诡异现象;而在科学计算领域&#xff0…

作者头像 李华
网站建设 2026/4/21 11:49:30

从一段病毒基因组序列实战:手把手教你解读ORF结果,预测潜在蛋白

病毒基因组ORF实战:从序列到功能蛋白的深度解析指南 当你在NCBI下载到一段陌生的病毒基因组序列时,面对ORF查找工具输出的数十个潜在开放阅读框,是否曾感到无从下手?本文将带你深入实战,用冠状病毒片段为例&#xff0c…

作者头像 李华
网站建设 2026/4/21 11:48:31

告别粗暴kill -9:在Ubuntu上优雅管理进程的5个专业习惯和工具推荐

告别粗暴kill -9:在Ubuntu上优雅管理进程的5个专业习惯和工具推荐 在Linux系统管理中,进程管理是最基础却最容易被忽视的技能之一。许多开发者和运维人员面对卡死的进程时,第一反应往往是简单粗暴的kill -9,殊不知这种操作就像用斧…

作者头像 李华
网站建设 2026/4/21 11:47:39

思源黑体TTF:如何为你的多语言项目选择最佳免费字体

思源黑体TTF:如何为你的多语言项目选择最佳免费字体 【免费下载链接】source-han-sans-ttf A (hinted!) version of Source Han Sans 项目地址: https://gitcode.com/gh_mirrors/so/source-han-sans-ttf 在当今全球化的数字环境中,设计师和开发者…

作者头像 李华