python的切片主要用在tuple和list这类带有索引index的数据结构上,用来取具体数组元素,或某一段数组元素
正索引负索引
正索引:0,1,2,3,4,这个就不说了
负索引:-1为最后一个元素,-2为倒数第二个
切片操作
object[start:end:step]
start:起始index,包含
end:结束index,不包含
step:步长,以多少步长取数据,默认为1
2个冒号都可以省略,如果一个冒号都没有的话,那就是返回具体数组中索引的那个数据,这个不说,object[1]
当只有一个冒号时,step默认为1
object[1:4]:从第2个元素开始取数据,到第5个结束(不包含第5个)
object = [0,1,2,3,4,5,6,7,8,9]
object[1:4] = [1,2,3]
如果有两个冒号,则最后一个为步长
object = [0,1,2,3,4,5,6,7,8]
object[1:5:2] = [1,3]
如果步长为负数呢?
object = [0,1,2,3,4,5,6,7,8]
object[5:1:-2] = [5,3]
所以步长为负数可以被用来翻转数组
比如:
object[::-1]
是对object的反转,reverse