初识切片
定义:切片指的是在现有的列表中获取一个子列表。
创建一个列表,一般创建列表时,变量的名字会使用复数。
stus=['孙悟空','八戒','沙和尚']
print(stus[0])
这里如果使用索引来获取元素的值,则将stus[]内的数值换一下即可。
小提示:索引的值可以是负数,如果是负数,则代表从后向前获取元素,比如:-1获取到的就是倒数第一个,-2就是倒数第二个。。。但是绝对值依然不可以超过元素的数量。
如果想要获取前两个,前三个,后两个的元素。。那该如何操作呢,此时切片就要派上用场了。
语法:列表[起始:结束]
stus=['孙悟空','八戒','沙和尚','唐僧','白龙马','蜘蛛精','白骨精']
print(stus[2:4])
执行结果为:
注意:
1、切片获取元素时,获取到的元素包括起始位置的元素,不包括结束位置的元素。
2、做切片操作时,总会返回一个新的列表,不会影响原来的列表
3、起始和结束位置的索引都可以省略不写,省略结束位置则一直截取到最后一个元素;省略开始位置,则会从第一个元素开始截取。
4、可以为负数,负数则从后向前截取
5、开始和结束位置都省略,则截取全部元素,相当于创建了一个列表的副本。
有的同学说了,不想挨个截取,想跳着截取怎么办呢?这就引入了步长的概念。步长表示每次获取元素的间隔,默认值是1;
stus=['孙悟空','八戒','沙和尚','唐僧','白龙马','蜘蛛精','白骨精']
print(stus[2:7:2])
执行结果为:
每隔两个元素截取一次返回到新列表中。
注意:
步长不可以是0,但是可以是负数,负数表示从后向前每隔n个数获取元素。