2022年 11月 5日

Python3 元组常见方法

元组的基础介绍

元组的基础介绍见此连接

元组与列表是相似的,明显的区别是:

  1. 元组内数据不可变,发生变化后相当于重新创建,指向地址将会改变
  2. 使用小括号 (),list使用 中括号[ ]

元组的小括号可以省略, 创建空元组时 写法为

tuple1 = ()
  • 1

当只有一个元素时,需要携带逗号否则将认为 () 是运算符
例:

>>> tuple1 = (15)
>>> type(tuple1)
<class 'int'>

>>> tuple2 = (15,)
>>> type(tuple2)
<class 'tuple'>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

元组操作

截取与访问
元组的截取和访问与 list 几乎没有区别,使用 [ : ] 截取,同样从左到右为 0 到 1 逐渐增加 ,从右往左为 -1 到 -2 逐渐递减(-1 > -2)
访问使用 tuple [index] 访问下标来访问,从0 开始

修改
元组不支持直接访问下标进行修改数据

>>> tuple2 = (15,)
>>> tuple2[0] = 16
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
  • 1
  • 2
  • 3
  • 4
  • 5

可以通过 + 拼接其他元组组成新的元组。

删除
元组内元素不允许修改自然也不允许删除,可以直接删除整个元组

del tuple2
  • 1

元组删除后,将无法再次引用对应的变量

元组操作运算

同样可以使用

len()
获取长度

+
使用 + 连接两个元组

*
重复元组内的数据

in
某一个元素是否在元组内

for 变量 in 元组对象:
print(变量)
对元组的迭代遍历

内置函数

len(tuple)
计算元组元素个数

max(tuple)
返回元组中元素最大值

min(tuple)
返回元组中元素最小值

tuple(iterable)
将可迭代系列转换为元组,例如 list

对于不可变的例子

元组内部元素创建后不可变,当赋值新的元组时整个对象在内存中指向的地址将会发生改变

>>> tuple2 = (15,)
>>> id(tuple2)
1531012990528

>>> tuple2 = (13,14,15)
>>> id(tuple2)
1531010585984
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7