一、基本概念
元组和列表类似,区别在于元组中的元素不能修改,表示方法也不一样,元组使用小括号,而列表使用方括号。
二、常用方法
由于元组中的元组不可修改,因此相对于列表,元组可提供的方法就很少了。方法描述
tuple(seq)将列表seq转换为元组
index(obj)从元组中找出某个值第一个匹配项的索引位置
count(obj)计算元素在元组中出现的次数
三、相关操作
1.创建元组
#创建空元组
tuple1 = ()
tuple1 = tuple()
#创建非空元组,注意当元组中只有一个元素时,其后面需要以逗号结尾,否则就不是元组类型了
tp1 = (1, )
tp2 = (1, 2, 3, 4, 5, 5)
2.计算元组中某个元素的出现次数
print(tp2.count(5))
输出:
2
3.获取元组中某个元素第一次出现的索引
print(tp2.index(5))
输出:
4
4.切片操作
#访问整个元组
print(tp2[:])
print(tp2[0:])
#访问元组中除最后一个元素之外的其他所有元素
print(tp2[:-1])
#访问元组中从第2个索引至第5个索引(不包括第5个索引)之间的元素
print(tp2[2:5])
#访问元组中从第1个索引至第5个索引(不包括第5个索引)之间的间隔为2的所有元素
print(tp2[1:5:2])
输出:
(1, 2, 3, 4, 5, 5)
(1, 2, 3, 4, 5, 5)
(1, 2, 3, 4, 5)
(3, 4, 5)
(2, 4)
5.元组相加
print(tp1 + tp2)
输出:
(1, 1, 2, 3, 4, 5, 5)
6.元组和数字相乘
print(tp1 * 3)
输出:
(1, 1, 1)
四、其他补充
关于元组不可修改需要说明的是,这里面的不可修改只针对元组中的一级元素,当元组中某个元素本身可变时,如列表,则这个元素其里面的内容还是可以修改的,举例如下:
tp1 =(1, [1, 2, 3], 2, 3)
print("修改前:{}".format(tp1))
tp1[1][0] = 4
tp1[1][1] = 5
tp1[1][2] = 6
print("修改后:{}".format(tp1))
输出:
修改前:(1, [1, 2, 3], 2, 3)
修改后:(1, [4, 5, 6], 2, 3)