python的tuple(元组)

概述:

  1. 与list类似,但tuple是不可变序列,即:创建后不支持增删改,元组中的元素、位置不可改变
  2. 可以存储任意类型

应用场景

函数返回多个元素时,本质返回 tuple

声明

标准:

>t=(1,2,3.14,"李现")
>type(t)

省略式:

>t=1,2,3.14,'肯德基'
>type(t)

tuple中只包含一个元素

>t=("世界杯")
>type(t)

显示如下:

<class 'str'>

继续看:

>t=(1)
>type(t)

显示如下:

<class 'int'>

原因是:当元祖中只包含一个元素时,声明如下:

>t=(1,)
>type(t)
>t=('世界杯',)
>type(t)

访问tuple的元素

访问某一个元素

同list

>l[0]

访问后几个元素

到第一个元素,可以写成下面形式:

>l[-1]

访问范围:从头开始截取

>l[0:2]

显示:[1,2],返回索引是0到2(不包含2)的元素

简化写法

从头开始截取,不需要写第一个数

>l[ :2]

访问范围:截取到末尾

>l[2 :4]

简化写法

截取到末尾,不需要写第二个数

>l[2:]

显示:[1, 2, 3.14, ‘鹿晗’],返回索引从2到最后的元素

改变元素

追加元素

>>> t.append(10)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'append'

提示错误

tuple不可改变

修改tuple里面的元素

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

如上,会提示错误

tuple不可改变

删除元素

不能删除元素,否则报错,如下:

del t[0]

将list转换为tuple

> l=[1,2,3]
> l
[1, 2, 3]
> t=tuple(l)
> t
(1, 2, 3)
>>>

应用场景

函数返回多个元素时,本质返回 tuple

fun add():
    return 1,2,3,4

res = add()

print( type(res) )
print( res )

原文出处:/show_1EF1QSk7wCkQ.html