tuple是python内置的一种数据类型,是数组的一种。但是和其他几种数组(list、numpy.ndarray等)有所不同:
1、tuple中的元素是不可修改的
2、tuple使用小括号,list使用方括号
===================================================================================
tuple在python中最常见的用法是作为函数的返回值。当函数具有多个返回值的时候,python会将结果打包成一个tuple返回。
相当于C++中返回一个常量值的数组。
def func(x):
res1 = x + 1
res2 = x * 2
return res1, res2
a = func(2)
m,n = func(2)
type(m) # int
type(a) # tuple
tuple的常用方法
1、count()
功能:统计tuple中某元素的个数
T = ('a', 'b', 'c', 1, 2, 3, 2, 4)
T.count(2) # 2
type(T) # int
2、index()
功能:获取元素在tuple中的索引值,对于重复的元素,默认获取左起第一个元素的索引值
3、+
功能:合并两个tuple,返回一个新的tuple,原本的tuple保持不变。
新tuple中包含原有两个tuple中的所有元素,+左边的tuple的元素索引值与原本相同,右边的tuple中的元素索引值为原本的索引值加上左边tuple的元素个数
4、*
左边为一个tuple,右边为一个int型常数N,返回一个tuple,其中将原tuple的元素重复了N次
=======================================================================
tips:
1、tuple不可更改指的是其所指向的元素不可更改。但是元素本身是可以更改的。
对应到C++中,可以理解为,tuple中保存的是一些常量指针,指向固定的内存单元。但是这些内存单元中保存的值是可以改变的。
2、tuple支持切片操作
参考文献: