今天就跟大家聊聊有关python中的列表切片有哪些作用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
我们基本上都知道python的序列对象都是可以用索引号来引用的元素的,索引号可以是正数由0开始从左向右,也可以是负数由1开始从右向左。
在python中对于具有序列结构的数据来说都可以使用切片操作,需注意的是序列对象某个索引位置返回的是一个元素,而切片操作返回是和被切片对象相同类型对象的副本。
如下面的例子,虽然都是一个元素,但是对象类型是完全不同的:
在祝辞祝辞,alist =, (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) 在祝辞祝辞,倾斜的[0] 0 在祝辞祝辞,倾斜的(0:1) [0]
通常一个切片操作要提供三个参数[start_index:,stop_index:,步),,
start_index是切片的起始位置 stop_index是切片的结束位置(不包括) 步可以不提供,默认值是1,步长值不能为0,不然会报错ValueError。
当一步是正数时,以列表(start_index)元素位置开始,一步做为步长到列表(stop_index)元素位置(不包括)为止,从左向右截取,,
start_index和stop_index不论是正数还是负数索引还是混用都可以,但是要保证名单[stop_index]元素的【逻辑】位置
必须在列表(start_index)元素的【逻辑】位置右边,否则取不出元素。
比如下面的几个例子都是合法的:
在祝辞祝辞,alist =, (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) 在祝辞祝辞,倾斜的[1:5] (1,,2,,3,,4] 在祝辞祝辞,倾斜的(1):1) [1,2,3,4,5,6,7,8) 在祝辞祝辞,倾斜的(八6) [2,3,4,5]
当一步是负数时,以列表(start_index)元素位置开始,一步做为步长到列表(stop_index)元素位置(不包括)为止,从右向左截取,
start_index和stop_index不论是正数还是负数索引还是混用都可以,但是要保证名单[stop_index]元素的【逻辑】位置
必须在列表(start_index)元素的【逻辑】位置左边,否则取不出元素。
比如下面的几个例子都是合法的:
在祝辞祝辞,alist =, (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) 祝辞祝辞祝辞,倾斜的(1:,5:,1] (9日,8日,7日,6] 在祝辞祝辞,倾斜的[9:,5:,1] (9日,8日,7日,6] 在祝辞祝辞,倾斜的(1:1:1) (9日,8日,7日,6日,5日,4,,3,,2] 在祝辞祝辞,倾斜的(6:8:1) [6日,5日,4日,3]
假设列表的长度(元素个数)是长度,start_index和stop_index在符合虚拟的逻辑位置关系时,
start_index和stop_index的绝对值是可以大于长度的。比如下面两个例子:
在祝辞祝辞,alist =, (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) 在祝辞祝辞,倾斜的[11] [0,1,2,3,4,5,6,7,8,9) 在祝辞祝辞,倾斜的(11:-11:1) (9日,8日,7日,6日,5日,4,,3,,2,,1,,0]
另外start_index和stop_index都是可以省略的,比如这样的形式倾斜的[:],被省略的默认由其对应左右边界起始元素开始截取。
看一下具体的实例:
在祝辞祝辞,alist =, (0, 1,, 2,, 3,, 4, 5, 6, 7, 8, 9) 在祝辞祝辞,倾斜的[:] [0,1,2,3,4,5,6,7,8,9)
看完上述内容,你们对python中的列表切片有哪些作用有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。