Python数据结构之二——tuple(元组)
Python版本:3.6.2 操作系统:Windows 作者:SmallWZQ
列表和元组是Python中最常见的内建序列。元组与列表一样,但是tuple一旦创建就不能修改。创建元组的语法非常简单,示例如下:
>>> 1,2,3
(1,2,3)
如果您用逗号分隔了一些值,那么您就自动创建了tuple。一旦创建,tuple内容就是固定的。
tuple格式如下:
t = (1,),小括号。
1.元组索引
tuple创建后,不能通过append()、pop()、insert()、remove()等方法改变tuple的内容。然而tuple是可以被索引访问的,即获取tuple元素的方法与list类似,但元素值不可被修改。
>>> t = (1,2,3,4,5,6)
>>> t[0]
1
如代码所示,tuple可以正常地通过索引(t[0],t[-1]......)访问元素值。
2.元组陷阱
创建元组时,需要特别注意元组中只有一个值的情况。Python的数据类型包括tuple、int等等。因此,当tuple中包含一个元素的时候,不能遗漏逗号。
>>> t = (56)
>>> t
56
>>> t = (56,)
>>> t
(56,)
注:定义一个空的tuple,可以写成()。
3.元组方法
由于元组是不可变的,所以元组支持的方法很少,与list无法相提并论。tuple仅仅支持index()、count()等极少数的方法。话不多说,直接上图。
图1 tuple方法介绍
4.tuple()
与list()一样,功能:以一个序列作为参数并把它转换为tuple。
>>> tuple([1,2,3])
(1,2,3)
>>> tuple('abc')
('a','b','c')
>>> tuple((1,2,3))
(1,2,3)
5.不可替代性
tuple是不可变序列,它有存在的必要吗?它的意义在哪?......面对这一系列的疑问,我也查过很多的资料,包括Python基础教程、廖晓峰教程等等。tuple不可替代的原因:1.安全性;2.键(key)。
因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple。(来自廖老师的教程)
tuple可以在映射(和集合的成员)中当作键(key)使用——而列表不行。
tuple作为很多内建函数和方法的返回值存在,也就是说您必须对元组进行处理。
>>>def f():
return 2,3
>>>f()
(2,3)
返回值为元组类型
tuple总结
1.tuple是不可变的序列。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构