切片是Python序列的重要操作之一,适用于列表、元组、字符串、range对象等类型
L = list(range(10))
L[n1:n2:n3]
n1:切片开始位置(默认为0)
n2:切片截止(但不包含)位置(默认为列表长度)
n3:切片的步长(默认为1),当步长省略时可以顺便省略最后一个冒号
切片的作用
- 截取列表中的任何部分,得到一个新列表
- 修改和删除列表中部分元素
- 为列表对象增加元素
- 切片返回的是列表元素的浅复制
浅复制
指生成一个新的列表,并且把原列表中所有元素的引用都复制到新列表中。如果原列表中只包含整数、实数、复数等基本类型或元组、字符串这样的不可变类型的数据,一般是没有问题的。
如果原列表中包含列表之类的可变数据类型,由于浅复制时只是把子列表的引用复制到新列表中,这样的话修改任何一个都会影响另外一个。