快速学习Python基础知识6--容器3--元组和容器序列切片

快速学习Python基础知识6--容器3--元组和容器序列切片
来源引用网络知识与某站曹老师视频相互结合学习记录仅供参考Python 基础知识四、容器容器是一种可以存储多个元素的数据类型Python 中的容器有字符串 str、列表 list、元组 tuple、集合 set、字典 dict统计“长度或数量”一般使用 len() 函数每个容器都有。3、 元组元组是多个元素的集合但是不能修改使用 小括号 ()Python 的元组与列表类似不同之处在于元组的元素不能修改。元组使用小括号( )列表使用方括号[ ]。元组创建很简单只需要在括号中添加元素并使用逗号隔开即可。元组的定义赋值定义元组变量名称(元素 1,元素 2,元素 3,元素 4,......)空元组定义元组变量名称()元组变量名称tuple()注意点若只有一个元素后面需要添加一个逗号否则会被当做字符串定义处理元组里面的元素没有限制元组里面可以嵌套元组# 元组赋值定义 t1 (apple, banana, cherry) print(ft1{t1}t1的类型是{type(t1)}) # 若定义的元组里面只有一个元素需要添加一个逗号否则会被当做字符串定义处理 t2 (apple) t3 (apple,) print(ft2{t2}t2的类型是{type(t2)}) print(ft3{t3}t3的类型是{type(t3)}) # 空元组定义 t4 () print(f空元组定义t4{t4}t4的类型是{type(t4)}) # 面向对象方式--使用tuple()对象方式定义空元组 t5 tuple() print(f面向对象方式定义空元组t5{t5}t5的类型是{type(t5)}) # 元组里面的元素类型没有限制元组里面可以嵌套元组 t6 (1, apple, 3.1415926, True, [5, 6], (7, 8), {9, 10}) print(f元组里面的元素类型没有限制,t6{t6}) 运行结果 t1(apple, banana, cherry)t1的类型是class tuple t2applet2的类型是class str t3(apple,)t3的类型是class tuple 空元组定义t4()t4的类型是class tuple 面向对象方式定义空元组t5()t5的类型是class tuple 元组里面的元素类型没有限制,t6(1, apple, 3.1415926, True, [5, 6], (7, 8), {9, 10})元组的下标索引元组的下标索引的用法几乎和列表一致唯一的区别就是不能修改元素可以通过元组的下标索引获取元组中的元素下标索引从 0 开始第一个元素下标索引是 0第二个元素下标索引是 1......第 N 个元素下标索引是 N-1或者通过反向索引也可以获取元组元素索引从-1 开始倒数第二个元素下标索引是-2......倒数第 N 个元素的下标索引是 -N元组 tuple123456......N-1N正索引012345......N-2N-1负索引-N-(N-1)-(N-2)-(N-3)-(N-4)-(N-5)......-2-1-N1-N2-N3-N4-N5......注意点元组的下标同样不能越界否则就会越界错误元组的常用方法因为元组不能修改所以常用方法比较少1、index(元素)方法查找元组中指定元素的下标不存在就报错t1 (apple, banana, cherry) print(f元组t1中的apple元素的下标是, t1.index(apple)) 运行结果 元组t1中的apple元素的下标是 02、count(元素)统计某元素在元组中的个数t1 (apple, banana, cherry, apple, banana) # count(元素)统计某元素在元组中的个数 # count t1.count(apple) # print(ft1元组中元素apple的个数{count}) print(t1元组中元素apple的个数是, t1.count(apple)) 运行结果 t1元组中元素apple的个数是 23、len(元组)统计元组内一共有多少元素t1 (apple, banana, cherry, apple, banana) # len(元组)统计元组内一共有多少元素 # length len(t1) # print(f统计t1元组中的元素个数{length}) print(f统计t1元组中的元素个数, len(t1)) 运行结果 统计t1元组中的元素个数 5元组内置函数Python元组包含了以下内置函数方法及描述实例len(tuple)计算元组元素个数。 tuple1 (Google, Runoob, Taobao) len(tuple1) 3max(tuple)返回元组中元素最大值。 tuple2 (5, 4, 8) max(tuple2) 8min(tuple)返回元组中元素最小值。 tuple2 (5, 4, 8) min(tuple2) 4tuple(iterable)将可迭代系列转换为元组。元组的遍历若需要获取元组内的所有元素可以通过 while 循环或者 for 循环遍历元组来获取while 循环遍历 元组# 元组赋值定义 t1 (apple, banana, cherry) # 定义变量i0 i 0 # while循环遍历元组 # while循环 条件i while i len(t1): # 通过下标取值元素并赋值给ele ele t1[i] # 每次循环进行打印 print(ele) # 防止while陷入死循环 i 1 运行结果 apple banana cherryfor 循环遍历 元组# 元组赋值定义 t1 (apple, banana, cherry) # for循环遍历元组 # 每次遍历t1元组时把获取到的每个变量放在 临时变量i 里面 for i in t1: print(i) 运行结果 apple banana cherry其他定义一个三维元组 t1 (((1, 2), (3, 4,), (5, 6)), ((7, 8), (9, 10), (11, 12))) 通过元组遍历打印出每个值提示使用循环嵌套实现# 定义一个三维元组 t1 (((1, 2), (3, 4,), (5, 6)), ((7, 8), (9, 10), (11, 12))) # 通过元组遍历打印出每个值使用循环嵌套实现 for i in t1: # print(ft1三维元组里面最外层有两个二维元组是{i}) for j in i: # print(f二维元组中的元组是{j}) for k in j: print(f三维元组的每个元素值是{k})容器序列切片序列是指内容连续且有序的一类数据容器例如之前所介绍的 字符串 str、列表 list、元组 tuple均是属于序列容器并且全都支持下标索引。切片是指从一个序列中取出一个子序列切片对 字符串、列表、元组 都是支持的而且语法全都是一样的语法序列 [ 起始下标:结束下标:步长 ]返回一个新的序列注意点步长默认是 1若步长是 1 可省略不写结束下标是不包括的起始下标:结束下标 都不写的话默认获取全部对字符串进行切片索引值以0为开始值-1为从末尾的开始位置。# 赋值定义字符串 str1 0123456789 # 对字符串进行切片--反向获取 print(str1[::-1]) print(str1[::-2]) print(str1[6:3:-1]) print(str1[6:3:-2]) 运行结果 9876543210 97531 654 64对列表进行切片与字符串的索引一样列表索引从0开始第二个索引是1依此类推。通过索引列表可以进行截取、组合等操作。# 赋值定义列表 list1 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # 对列表进行切片 print(list1) print(list1[1:4:1]) # 步长默认是1可省略不写 print(list1[1:4:]) 运行结果 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] [1, 2, 3] [1, 2, 3]对元组进行切片元组与字符串、列表类似下标索引从 0 开始可以进行截取组合等。# 赋值定义元组 tuple1 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) # 对元组进行切片 # 起始下标:结束下标 不写的话默认获取全部 print(tuple1[:]) # 步长2 print(tuple1[::2]) 运行结果 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (0, 2, 4, 6, 8)未完待续......

最新新闻

日新闻

周新闻

月新闻