Python元组知识点总结


Posted in Python onFebruary 18, 2019

Python的元组与列表类似,不同之处在于元组的元素不能修改。

元组使用小括号,列表使用方括号。

元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

如下实例:

tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5 )
tup3 = "a", "b", "c", "d"

创建空元组

tup1 = ()

元组中只包含一个元素时,需要在元素后面添加逗号

tup1 = (50,)

元组与字符串类似,下标索引从0开始,可以进行截取,组合等。

访问元组

元组可以使用下标索引来访问元组中的值,如下实例:

#!/usr/bin/python
 
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5, 6, 7 )
 
print "tup1[0]: ", tup1[0]
print "tup2[1:5]: ", tup2[1:5]

以上实例输出结果:

tup1[0]: physics
tup2[1:5]: (2, 3, 4, 5)

修改元组

元组中的元素值是不允许修改的,但我们可以对元组进行连接组合,如下实例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')
 
# 以下修改元组元素操作是非法的。
# tup1[0] = 100
 
# 创建一个新的元组
tup3 = tup1 + tup2
print tup3

以上实例输出结果:

(12, 34.56, 'abc', 'xyz')

删除元组

元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组,如下实例:

#!/usr/bin/python
 
tup = ('physics', 'chemistry', 1997, 2000)
 
print tup
del tup
print "After deleting tup : "
print tup

以上实例元组被删除后,输出变量会有异常信息,输出如下所示:

('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
 File "test.py", line 9, in <module>
  print tup
NameError: name 'tup' is not defined

元组运算符

与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。

Python 表达式 结果 描述
len((1, 2, 3)) 3 计算元素个数
(1, 2, 3) + (4, 5, 6) (1, 2, 3, 4, 5, 6) 连接
('Hi!',) * 4 ('Hi!', 'Hi!', 'Hi!', 'Hi!') 复制
3 in (1, 2, 3) True 元素是否存在
for x in (1, 2, 3): print x, 1 2 3 迭代

元组索引,截取

因为元组也是一个序列,所以我们可以访问元组中的指定位置的元素,也可以截取索引中的一段元素,如下所示:
元组:

L = ('spam', 'Spam', 'SPAM!')

Python 表达式 结果 描述
L[2] 'SPAM!' 读取第三个元素
L[-2] 'Spam' 反向读取,读取倒数第二个元素
L[1:] ('Spam', 'SPAM!') 截取元素

无关闭分隔符

任意无符号的对象,以逗号隔开,默认为元组,如下实例:

#!/usr/bin/python
 
print 'abc', -4.24e93, 18+6.6j, 'xyz'
x, y = 1, 2
print "Value of x , y : ", x,y

以上实例运行结果:

abc -4.24e+93 (18+6.6j) xyz
Value of x , y : 1 2

元组内置函数

Python元组包含了以下内置函数

序号 方法及描述
1 cmp(tuple1, tuple2) 比较两个元组元素。
2 len(tuple) 计算元组元素个数。
3 max(tuple) 返回元组中元素最大值。
4 min(tuple) 返回元组中元素最小值。
5 tuple(seq) 将列表转换为元组。
Python 相关文章推荐
Pyramid将models.py文件的内容分布到多个文件的方法
Nov 27 Python
Python random模块(获取随机数)常用方法和使用例子
May 13 Python
VSCode下配置python调试运行环境的方法
Apr 06 Python
Python读取excel指定列生成指定sql脚本的方法
Nov 28 Python
在pycharm中显示python画的图方法
Aug 31 Python
Python传递参数的多种方式(小结)
Sep 18 Python
Python3 无重复字符的最长子串的实现
Oct 08 Python
python 实现多线程下载视频的代码
Nov 15 Python
Python使用Turtle库绘制一棵西兰花
Nov 23 Python
PyCharm 解决找不到新打开项目的窗口问题
Jan 15 Python
TensorFlow2.0使用keras训练模型的实现
Feb 20 Python
Python使用openpyxl模块处理Excel文件
Jun 05 Python
pandas数据集的端到端处理
Feb 18 #Python
Python 数据库操作 SQLAlchemy的示例代码
Feb 18 #Python
Python列表常见操作详解(获取,增加,删除,修改,排序等)
Feb 18 #Python
Python File(文件) 方法整理
Feb 18 #Python
Python异常处理知识点总结
Feb 18 #Python
Python os.access()用法实例
Feb 18 #Python
python使用pipeline批量读写redis的方法
Feb 18 #Python
You might like
基于文本的留言簿
2006/10/09 PHP
php解析html类库simple_html_dom(详细介绍)
2013/07/05 PHP
摘自织梦CMS的HTTP文件下载类
2015/08/08 PHP
Zend Framework入门教程之Zend_Config组件用法详解
2016/12/09 PHP
Zend Framework数据库操作方法实例总结
2016/12/11 PHP
php7新特性的理解和比较总结
2019/04/14 PHP
PHP创建XML的方法示例【基于DOMDocument类及SimpleXMLElement类】
2019/09/10 PHP
新发现一个骗链接的方法(js读取cookies)
2012/01/11 Javascript
js使用数组判断提交数据是否存在相同数据
2013/11/27 Javascript
点击表单提交时出现jQuery没有权限的解决方法
2014/07/23 Javascript
jQuery层级选择器用法分析
2015/02/10 Javascript
纯JS实现旋转图片3D展示效果
2015/04/12 Javascript
JavaScript原生对象常用方法总结(推荐)
2016/05/13 Javascript
HTML Table 空白单元格补全的简单实现
2016/10/13 Javascript
JavaScript中清空数组的方法总结
2016/12/02 Javascript
Vue之Watcher源码解析(2)
2017/07/19 Javascript
layer.open关闭父窗口 以及调用父页面的方法
2018/08/17 Javascript
详解Vue.js 作用域、slot用法(单个slot、具名slot)
2019/10/15 Javascript
es6中let和const的使用方法详解
2020/02/24 Javascript
Nuxt的路由动画效果案例
2020/11/06 Javascript
Python3 Tkinter选择路径功能的实现方法
2019/06/14 Python
django中media媒体路径设置的步骤
2019/11/15 Python
解决Jupyter因卸载重装导致的问题修复
2020/04/10 Python
Python爬虫自动化获取华图和粉笔网站的错题(推荐)
2021/01/08 Python
CSS3中HSL和HSLA的简单使用示例
2015/07/14 HTML / CSS
CSS3中颜色线性渐变实战
2015/07/18 HTML / CSS
北京某公司的.net笔试题
2014/03/20 面试题
教育学习自我评价
2014/02/03 职场文书
无房证明范本
2014/09/17 职场文书
2014年远程教育工作总结
2014/12/09 职场文书
护士年终考核评语
2014/12/31 职场文书
工地材料员岗位职责
2015/04/11 职场文书
信用卡收入证明范本
2015/06/12 职场文书
大学开学感言
2015/08/01 职场文书
幼儿园大班教师评语
2019/06/21 职场文书
Java8中接口的新特性使用指南
2021/11/01 Java/Android