元组(tuple)
元祖也是Python中常见的数据类型之一,它可以用来存放任何数据类型,但它也有它的特点:
1. 不能修改,不可变类型 2. 用()的形式 3. 元组也是可迭代对象 4. 元组是有序的,下标操作,支持切面操作[:]
1.元组的创建及访问
1. 创建: 直接创建,例如 t = (1,2,3,4,5) 2. 访问: t[下标] #获取元素 3. 切片操作: t[:] 返回元组
例子创建元组并对元组进行元素访问和切片操作:
t = (1, 2, 3, 4, 5) print(t[2]) #输出下标为2的元组元素 n = t[2:4] #切片,范围是下标2~4 print(n)
执行结果为:
3 (3, 4)
2.修改和删除
前面有说过元组是不可变类型,不能修改,但是可以通过将元组转换成列表的形式进行修改和删除等操作,最后再将列表转换成元组,完成元组的修改和删除。
例如:修改元组中的元素
t = (1, 2, 3, 4, 5) l = list(t) #将元组转换成列表 print(l) #输出列表 l[2] = 6 #列表指定元素的修改 print(l) #输出新列表 t = tuple(l) #列表转换成元组 print(t)
执行结果:
[1, 2, 3, 4, 5] [1, 2, 6, 4, 5] (1, 2, 6, 4, 5)
删除元组中的元素可用 del t[下标] 方法,前提还是一样的先将元组转换成列表,例如:
t = (1, 2, 3, 4, 5) l = list(t) #将元组转换成列表 print(l) #输出列表 del l[2] #列表指定元素的删除 print(l) #输出新列表 t = tuple(l) #列表转换成元组 print(t)
执行结果:
[1, 2, 3, 4, 5] [1, 2, 4, 5] (1, 2, 4, 5)
3.元组的操作符
元组同样也有着操作符,方法跟列表的操作符是一样的。
1. 比较运算符 < > >= <= == != 2. 逻辑运算符 and not or 3. 拼接运算符 + 4. 重复操作符 * 5. 成员关系操作符 in not in 判断元素是否在列表中 print(5 not in l)
例子:判断5在不在元组里面。
t = (1, 2, 3, 4, 5) print(5 not in t) #5不在元组里面
执行结果:
False
4.元组的方法
元组的方法和前面所介绍的列表的方法是一样的,这里给大家回顾一下列表的常用方法:
这些方法的使用还是遵循列表的方法时所讲的 变量名.方法 。除了上面的这些,还有2个方法值得新增:
1. count(value) 统计某个值出现的次数,value是指定的值 2. index(value,[start],[stop]) 返回value在元组中出现的下标位置(第一次出现的下标)
例子:统计3在元组(1,2,3,4,5,3)中第一次出现的下标。
t = (1, 2, 3, 4, 5,3) l1 = t.index(3, 0, 6) print(l1)
执行结果:
2