1:元组的定义及特性
元组: 俗称不可变的列表,又被称为只读列表,元组是一种不可变数据类型,元组也是python的基本数据类型之一, 用小括号()括起来(也可以不要括号),使用逗号分隔,里面可以放任何数据类型的数据, 查询可以. 循环也可以. 切片也可以. 但就是不能改。
元组具有如下特性:
a:任意对象的有序集合,它固定长度,能够任意嵌套;
b:可通过偏移访问;
c:属于“不可变系列”的分类;
d:元组是对象引用数组;
2:常用元组字面量及操作
2.1常用元组字面量及操作汇总
3:元组的索引与切片:
元组也是一种系列数据类型,像列表一样可以通过索引与切片来访问它,但是不能对元组进行修改。
3.1:元组索引:
t=(1,2,3)print(t)print('索引为正数:')print(t[0])print(t[1])print(t[2])#print(t[3]) #会报错print('索引为负数:')print(t[-1])print(t[-2])print(t[-3]) '''(1, 2, 3)索引为正数:123索引为负数:321'''
3.2:元组切片
t=(1,2,3,4,5,6,7)print('t=',t)print('t[::2]=',t[::2])print('t[1:5]=',t[1:5])print('t[1:5:2]=',t[1:5:2])print('t[::-1]=',t[::-1])print('t[-1:3:-1]=',t[-1:3:-1])print('t[-1:-4:-1]=',t[-1:-4:-1]) """t= (1, 2, 3, 4, 5, 6, 7)t[::2]= (1, 3, 5, 7)t[1:5]= (2, 3, 4, 5)t[1:5:2]= (2, 4)t[::-1]= (7, 6, 5, 4, 3, 2, 1)t[-1:3:-1]= (7, 6, 5)t[-1:-4:-1]= (7, 6, 5)"""
4:元组的增删改查
元组是一种不可变的数据类型,是不可变的数据类型,因此不能对其进行增,改操作,删操作是删除整个元组:
t=(1,2,3,4) # 删除操作#t[0] = '99' # TypeError: 'tuple' object does not support item assignmentdel t # 删除整个元组#print(t) # 已经删除了,NameError: name 'tu' is not defined # 没有添加元素的操作# 没有修改操作 # 元组 的遍历t=(1,2,3,4)for item in t: print(item) for index,item in enumerate(t): print(index,item)
另外这里的元组不可修改数据,指的是元组的顶层元素不能修改,如果元组嵌套了其他可变数据对象的话,是可以对内嵌对象修改的。
看如下代码:
t=(1,2,[3,4],5,6)print('1---t=',t)print('2---t[2]=',t[2])# t[2] 是元组t内嵌的列表,不能给t[2]赋值,但t[2]是一个列表的引用(即t[2]相当于一个对象,它指向一个列表),所以修改这个被引用列表的值# t[2] = 100 # 给t[2]赋值会报错,t[2][0] = 77print('3---t=',t)print('4---t[2]=',t[2]) '''1---t= (1, 2, [3, 4], 5, 6)2---t[2]= [3, 4]3---t= (1, 2, [77, 4], 5, 6)4---t[2]= [77, 4]'''
领取专属 10元无门槛券
私享最新 技术干货