链接:https://www.jianshu.com/p/15715d6f4dad
1、切片是Python序列的重要操作之一,适用于列表元组、字符串、range对象等类型;
2、切片使用2个冒号分割3个数字来完成:
第一个数字表示切片的开始位置(默认为0)
第二个数字表示切片截止(但不包含)位置(默认为列表长度)
第三个数字表示切片的步长(默认为1),当步长省略时可以顺便省略最后一个冒号。
3、可以使用切片来截取列表中的任何部分,得到一个新列表,也可以通过切片来修改和删除列表中的部分元素,甚至可以通过切片操作作为列表对象增加元素。
4、切片操作不会因为下标越界而抛出异常,而是简单的在列表尾部截断或者返回一个空列表。
(1)、越界
>>> aList = [3,4,5,6,7,8,9] >>> aList[100 :] []
(2)、默认请况
>>> aList = [3,4,5,6,7,8,9] >>> aList(100:) >>> aList[: :] [3, 4, 5, 6, 7, 8, 9] >>> aList[: : 2] [3, 5, 7, 9] >>> aList[1 : : 2] [4, 6, 8] >>> aList[3 : : ] [6, 7, 8, 9] >>> aList[3 : 6 ] [6, 7, 8] >>> aList[3 : 6 : 1] [6, 7, 8] >>> aList[0 : 100: 1] [3, 4, 5, 6, 7, 8, 9] >>>
(3)、增加
>>> aList = [3,5,7] >>> aList[len(aList) : ] []
>>> aList[len(aList) : ]=[9] >>> aList [3, 5, 7, 9] >>> aList[: 3] = [1,2,3] >>> aList [1, 2, 3, 9] >>> aList[: 3] = [] >>> aList [9]
(4)、查看
>>> aList = [3,4,5,6,7,8,9] >>> aList[: :] [3, 4, 5, 6, 7, 8, 9] >>> aList[: : 2] [3, 5, 7, 9] >>> aList[1 : : 2] [4, 6, 8] >>> aList[3 : : ] [6, 7, 8, 9] >>> aList[3 : 6 ] [6, 7, 8] >>> aList[3 : 6 : 1] [6, 7, 8] >>> aList[0 : 100: 1] [3, 4, 5, 6, 7, 8, 9] >>>
(5)、删除
>>> aList = [3, 5, 6, 7, 9] >>> del aList[ : 3] >>> aList [7, 9] >>>