python中的列表切片有哪些作用

  介绍

今天就跟大家聊聊有关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中的列表切片有哪些作用有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

python中的列表切片有哪些作用