Day05
一、tuple元组
1.概述
和列表相似,本质上是一种有序的集合
元组和列表的不同之处:
a.列表:[ ] 元组:( )
b.列表中的元素可以进行增加和删除操作,但是,元组中的元素不能修改【元素:一旦被初始化,将不能发生改变】
2.创建元组
创建列表:
创建空列表:list1 = [ ]
创建有元素的列表:list1 = [元素1,元素2,。。。。。]
创建元组
创建空元组:tuple1 = ( )
创建有元素的元组:tuple1 = (元素1,元素2,。。。。)
代码演示:
#创建空元组: tuple1 = () #创建有元素的元组: tuple2 = (10,20,30) #在元组中可以存储不同类型的数据 tuple3 = ("hello",True,100) #注意:创建只有一个元素的元组 #按照下面的方式书写,表示定义了一个整型的变量,初始值为1 tuple4 = (1) tuple4 = 1 #为了消除歧义,修改如下: tuple4 = (1,) num1 = 10 num2 = (10) print(num1,num2)
3.元组元素的访问
代码演示:
#元组元素的访问 #格式:元组名[索引],和列表完全相同 tuple1 = (10,20,30,40,50) #1.获取元素值 print(tuple1[2]) #获取元组中的最后一个元素 print(tuple1[4]) #print(tuple1[5]) #IndexError: tuple index out of range 索引越界 #正数表示从前往后获取,负数表示从后往前获取 print(tuple1[-1]) print(tuple1[-2]) print(tuple1[-5]) # print(tuple1[-6]) #IndexError: tuple index out of range 索引越界 #2.修改元素值----->不能修改,本质原因不能修改元素的地址 #和列表不同的地方:元组的元素值不能随意的更改 #tuple1[1] = 100 tuple2 = (1,35,54,[4,5,6]) #获取元组中列表中的元素 print(tuple2) #(1, 35, 54, [4, 5, 6]) tuple2[3][1] = 50 print(tuple2) #(1, 35, 54, [4, 50, 6]) #3.删除元组 tuple3 = (53,6,7,76) del tuple3
4.元组操作
代码演示:
#1.元组组合 #+ tuple1 = (3,43,5,4) tuple2 = (3,5,45,4) print(tuple1 + tuple2) #2.元组重复 #* print(tuple1 * 3) #注意:元组组合和元组重复得到的是一个新的元组,原来的元组并没有发生任何改变 #3.判断元素是否在元组中 #成员运算符 #in not in print(100 in tuple1) print(100 not in tuple1) #4.元组截取【切片】 tuple3 = (1,23,43,54,54,656,57,6) print(tuple3[2:4]) print(tuple3[2:]) print(tuple3[:4])
5.元组功能
代码演示:
#1.获取元组的元素个数 tuple1 = (54,3,5,46,56) print(len(tuple1)) #2.获取元组中元素的最大值和最小值 print(max(tuple1)) print(min(tuple1)) #3.元组和列表之间的相互转换:取长补短 #3.1 元组-----》列表 #list() list1 = list(tuple1) #int() float() print(list1) #3.2 列表------》元组 #tuple() list2 = [34,5,46,4] tuple2 = tuple(list2) print(tuple2) #4.遍历元组 #4.1直接遍历元素 for n in tuple1: print(element) #4.2遍历索引 for index in range(len(tuple1)): print(tuple1[index]) #4.3同时遍历索引和元素 for i,num in enumerate(tuple1): print(i,num)