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 相关文章推荐
在Python的web框架中编写创建日志的程序的教程
Apr 30 Python
深入理解Python中字典的键的使用
Aug 19 Python
浅谈pyhton学习中出现的各种问题(新手必看)
May 17 Python
Python实现简单的获取图片爬虫功能示例
Jul 12 Python
python的exec、eval使用分析
Dec 11 Python
对python的文件内注释 help注释方法
May 23 Python
更改Python的pip install 默认安装依赖路径方法详解
Oct 27 Python
使用python获取电脑的磁盘信息方法
Nov 01 Python
Python 数据库操作 SQLAlchemy的示例代码
Feb 18 Python
Python 正则表达式爬虫使用案例解析
Sep 23 Python
解决django的template中如果无法引用MEDIA_URL问题
Apr 07 Python
Django celery异步任务实现代码示例
Nov 26 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+JS无限级可伸缩菜单详解(简单易懂)
2007/01/02 PHP
php下使用iconv需要注意的问题
2010/11/20 PHP
Yii实现Command任务处理的方法详解
2016/07/14 PHP
Yii2 批量插入、更新数据实例
2017/03/15 PHP
Thinkphp5.0框架视图view的模板布局用法分析
2019/10/12 PHP
Laravel自动生成UUID,从建表到使用详解
2019/10/24 PHP
获取HTML DOM节点元素的方法的总结
2009/08/21 Javascript
jquery移动listbox的值原理及代码
2013/05/03 Javascript
在javascript中如何得到中英文混合字符串的长度
2014/01/17 Javascript
基于JavaScript的操作系统你听说过吗?
2016/01/28 Javascript
基于Jquery插件实现跨域异步上传文件功能
2016/04/26 Javascript
Javascript动画效果(2)
2016/10/11 Javascript
JS检测数组类型的方法小结
2017/03/14 Javascript
微信小程序中input标签详解及简单实例
2017/05/18 Javascript
bootstrap可编辑下拉框jquery.editable-select
2017/10/12 jQuery
vue中img src 动态加载本地json的图片路径写法
2019/04/25 Javascript
Vue-cli3简单使用(图文步骤)
2019/04/30 Javascript
生产制造追溯系统之在线打印功能
2019/06/03 Javascript
小程序click-scroll组件设计
2019/06/18 Javascript
Vue-cli3.X使用px2 rem遇到的问题及解决方法
2019/08/08 Javascript
JavaScript实现与web通信的方法详解
2020/08/07 Javascript
详解如何使用React Hooks请求数据并渲染
2020/10/18 Javascript
JavaScript实现点击切换功能
2021/01/27 Javascript
Python实现的计算马氏距离算法示例
2018/04/03 Python
DataFrame中去除指定列为空的行方法
2018/04/08 Python
Django开发中的日志输出的方法
2018/07/02 Python
Python学习笔记之视频人脸检测识别实例教程
2019/03/06 Python
对Python生成器、装饰器、递归的使用详解
2019/07/19 Python
详解python中自定义超时异常的几种方法
2019/07/29 Python
python 实现 hive中类似 lateral view explode的功能示例
2020/05/18 Python
CSS3 please 跨浏览器的CSS3产生器
2010/03/14 HTML / CSS
大学生农村教师实习自我鉴定
2013/09/21 职场文书
党政领导班子民主生活会整改措施
2014/09/18 职场文书
学习普通话的体会
2014/11/07 职场文书
2014年党建工作总结
2014/11/11 职场文书
使用 JavaScript 制作页面效果
2021/04/21 Javascript