Python元组核心特性与操作指南
本文系统介绍Python中元组的创建、访问、组合及删除操作。重点解析元组与列表的区别,演示单元素元组的逗号写法,以及元组的索引、切片和运算符使用。同时涵盖删除整个元组的方法及常用内置函数,帮助开发者掌握不可变序列的核心用法。
Python中的元组(Tuple)与列表在结构上相似,主要区别在于元组的元素一旦创建便不可修改,具有不可变性。
在语法表示上,元组使用小括号 `()` 进行定义,而列表则使用方括号 `[]`。
创建元组的过程非常简便,只需在括号内列出元素,并用逗号 `,` 分隔即可。
以下是具体的代码示例。
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) 将列表转换为元组。 |
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









