首页 > 代码库 > python切片

python切片

假设有一个list,要对其进行截取操作

L = [‘Michael‘, ‘Smith‘, ‘Jobs‘, ‘John‘]

首先分别取出其中的值,我们可以像PHP中操作数组一样取值

技术分享

可见,此种方法可以取出L的值。值得注意的是,索引同PHP Array一样从0开始

如果想取出L中前3个元素,也可以使用for循环来处理

技术分享

用这种方法,取出了要求的结果。但是python提供了一种更方便简洁的操作,就是切片(slice)。下面来演示如果使用切片来获取L中的前三个元素

技术分享

仅仅用L[0:3]就达到了同for操作一样的结果,但很明显切片操作更加的简洁

L[0:3]表示从索引为0的地方开始截取,截取到索引为3的位置为止,但截取到的元素不包括索引为3的元素,也就是说截取的范围是一个前闭后开的区间

当从索引为0的位置开始取时,这个0可以被省略,默认从0开始,即L[:3]与L[0:3]产生的效果是一样的

技术分享

创建一个0-99的数列来了解切片的其他特性

N = list(range(100))

技术分享

假设我们要取出其中的奇数

技术分享

N[1:99:2]表示从索引1到索引99之间,每2个数中取一个

也可以倒着截取

技术分享

 倒数第一个数的位置永远是-1,所以N[-10:]就表示从倒数第10个数开始,一直取到最后一个数

python切片