前面我们学习了Python列表切片的规则,其实在Python中还对列表对象提供了非常方便的切片特性,可以视为一种提供方括号进索引的扩展语法,通常用于访问有序集合中某一范围的元素,下面一起来看看在列表中使用切片的操作都有哪些技巧吧。
对切片技巧的讲解前,我们先熟悉一下切片中使用[]对元素进行索引的方法,格式如下:
[start:stop:step]
下面看一个简单的示例:
lst = [1, 2, 3, 4, 5] lst 运行结果:[1, 2, 3, 4, 5] lst[start:end:step] lst[1:3:1] 运行结果:[2, 3]
在这段代码中,我们是通过[1:3:1]的方式返回的是从索引1到索引2的原始列表切片,将步长设置为1,避免在元素的处理中,多出一个元素,需要注意的是,一般在索引的时候是取头不取尾。
技巧1:使用:操作符清空列表中的所有元素
在一个程序中,如果是有其它的引用需要替换掉列表中的元素时,这个时候需要做的第一件事情就是将列表元素清空处理,不能使用替换的方式,因为这样会改变原列表的引用,此时就可以使用“:”符号进行操作了,举个例子,代码如下:
lst = [1, 2, 3, 4, 5] del lst[:] lst 运行结果:[]
通过运行结果可以看到,列表中元素是被清空的,但是这并不会改变列表对象。
技巧2:使用::操作符反转列表
刚才技巧1中使用的是一个‘:’操作符,就可以实现列表清空的操作,现在使用两个,就是直接将列表起始位置和结束位置省略,下面看一个简单的例子,使用[::-1]切片会得到原始列表的逆序副本:
lst = [1, 2, 3, 4, 5] lst[::-1] 运行结果:[5, 4, 3, 2, 1]
通过运行结果可知,::让Python提供完整的列表,但将步长设置为-1来从后到前遍历所有元素。就相当于list.reverse()和内置的reverse()函数来反转列表一样。
关于Python列表切片技巧有哪些?Python列表的切片基本操作的文章就分享到这里了,希望以上的内容可以对大家的学习带来一定的帮助。