Python中的tuple元组详细介绍


Posted in Python onFebruary 02, 2015

Tuple 是不可变 list。 一旦创建了一个 tuple 就不能以任何方式改变它。

Tuple 与 list 的相同之处

定义 tuple 与定义 list 的方式相同, 除了整个元素集是用小括号包围的而不是方括号。
Tuple 的元素与 list 一样按定义的次序进行排序。 Tuples 的索引与 list 一样从 0 开始, 所以一个非空 tuple 的第一个元素总是 t[0]。
负数索引与 list 一样从 tuple 的尾部开始计数。
与 list 一样分片 (slice) 也可以使用。注意当分割一个 list 时, 会得到一个新的 list ;当分割一个 tuple 时, 会得到一个新的 tuple。

Tuple 不存在的方法

您不能向 tuple 增加元素。Tuple 没有 append 或 extend 方法。
您不能从 tuple 删除元素。Tuple 没有 remove 或 pop 方法。
您不能在 tuple 中查找元素。Tuple 没有 index 方法。
然而, 您可以使用 in 来查看一个元素是否存在于 tuple 中。

用 Tuple 的好处

Tuple 比 list 操作速度快。如果您定义了一个值的常量集,并且唯一要用它做的是不断地遍历它,请使用 tuple 代替 list。
如果对不需要修改的数据进行 “写保护”,可以使代码更安全。使用 tuple 而不是 list 如同拥有一个隐含的 assert 语句,说明这一数据是常量。如果必须要改变这些值,则需要执行 tuple 到 list 的转换。

Tuple 与 list 的转换

Tuple 可以转换成 list,反之亦然。内置的 tuple 函数接收一个 list,并返回一个有着相同元素的 tuple。而 list 函数接收一个 tuple 返回一个 list。从效果上看,tuple 冻结一个 list,而 list 解冻一个 tuple。

Python 相关文章推荐
利用Django框架中select_related和prefetch_related函数对数据库查询优化
Apr 01 Python
Python的Flask框架中配置多个子域名的方法讲解
Jun 07 Python
一文总结学习Python的14张思维导图
Oct 17 Python
Python模块搜索路径代码详解
Jan 29 Python
Python实现的网页截图功能【PyQt4与selenium组件】
Jul 12 Python
python 快速把超大txt文件转存为csv的实例
Oct 26 Python
Opencv+Python 色彩通道拆分及合并的示例
Dec 08 Python
Python编程深度学习计算库之numpy
Dec 28 Python
通过 Django Pagination 实现简单分页功能
Nov 11 Python
Python+Selenium+phantomjs实现网页模拟登录和截图功能(windows环境)
Dec 11 Python
Python xml、字典、json、类四种数据类型如何实现互相转换
May 27 Python
通过代码实例了解Python异常本质
Sep 16 Python
Linux下编译安装MySQL-Python教程
Feb 02 #Python
Python写的服务监控程序实例
Jan 31 #Python
用python 制作图片转pdf工具
Jan 30 #Python
Python是编译运行的验证方法
Jan 30 #Python
Python的类实例属性访问规则探讨
Jan 30 #Python
Python中的作用域规则详解
Jan 30 #Python
Python中使用Boolean操作符做真值测试实例
Jan 30 #Python
You might like
php数据入库前清理 注意php intval与mysql的int取值范围不同
2010/12/12 PHP
WordPress中获取所使用的模板的页面ID的简单方法
2015/12/31 PHP
PHP定时任务获取微信access_token的方法
2016/10/10 PHP
laravel-admin解决表单select联动时,编辑默认没选上的问题
2019/09/30 PHP
你所要知道JS(DHTML)中的一些技巧
2007/01/09 Javascript
一组JS创建和操作表格的函数集合
2009/05/07 Javascript
推荐40个简单的 jQuery 导航插件和教程(下篇)
2012/09/14 Javascript
深入探究使JavaScript动画流畅的一些方法
2015/06/30 Javascript
JS实现CheckBox复选框全选、不选或全不选功能
2020/07/28 Javascript
学习使用jquery iScroll.js移动端滚动条插件
2020/03/24 Javascript
浅析Bootstrap缩略图组件与警示框组件
2016/04/29 Javascript
Ext JS动态加载JavaScript创建窗体的方法
2016/06/23 Javascript
详解AngularJS之$window窗口对象
2018/01/17 Javascript
vue.js实现数据库的JSON数据输出渲染到html页面功能示例
2019/08/03 Javascript
Vue中axios的封装(报错、鉴权、跳转、拦截、提示)
2019/08/20 Javascript
关于layui flow loading占位图的实现方法
2019/09/21 Javascript
JS实现简易日历效果
2021/01/25 Javascript
python 链接和操作 memcache方法
2017/03/04 Python
Python加密方法小结【md5,base64,sha1】
2017/07/13 Python
pandas 强制类型转换 df.astype实例
2020/04/09 Python
Python Tornado实现WEB服务器Socket服务器共存并实现交互的方法
2020/05/26 Python
numpy中生成随机数的几种常用函数(小结)
2020/08/18 Python
佐卡伊官网:中国知名珠宝品牌
2017/02/05 全球购物
大学生的应聘自我评价
2013/12/13 职场文书
大学生村官心得体会范文
2014/01/04 职场文书
实验教师岗位职责
2014/02/13 职场文书
《争吵》教学反思
2014/02/15 职场文书
教师产假请假条
2014/04/10 职场文书
服务标语口号
2014/07/01 职场文书
乡镇消防安全责任书
2014/07/23 职场文书
试用期工作表现自我评价
2015/03/06 职场文书
2015年监理工作总结范文
2015/04/07 职场文书
中秋晚会致辞
2015/07/31 职场文书
2016教师校本研修心得体会
2016/01/08 职场文书
PL350与SW11的比较
2021/04/22 无线电
golang中字符串MD5生成方式总结
2021/07/04 Golang