定义:
切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。
语法:
切片的语法:[起始:结束:步长],其中步长可有可无。
注意:
选取的区间属于左闭右开型,即从”起始”位开始,到”结束”位的前一位结束(不包含结束位本身)。
step: 步长,默认取值是 1 ,可以为负数,默认方向是从左往右,负数代表从右往左 。 二.切片操作1.切割获取单个值
>>> a=[1,2,3,4,5,6,7,8,9] >>> a[0] 1 >>> a[5] 6 >>>
2.切割完整对象
>>> a [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[:] [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[::] [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[::-1]#-1 从右往左 [9, 8, 7, 6, 5, 4, 3, 2, 1]
3. start和end全部为正数的情况下
>>> a [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[1:6] [2, 3, 4, 5, 6] >>> a[1:6:-1] # start = 1 end = 6 表示从左往右 step=-1 表示的是从右往左 所以自相矛盾返回的是空 [] >>> a[:6] [1, 2, 3, 4, 5, 6] >>> a[6:] [7, 8, 9] >>> a[6::-1] [7, 6, 5, 4, 3, 2, 1]4. start 和 end 全部为 负数 的情况下
>>> a [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[-1:-6] [] >>> a[-1:-6:-1] [9, 8, 7, 6, 5] >>> a[-6:-1] [4, 5, 6, 7, 8] >>> a[:-6] [1, 2, 3] >>> a[-6::-1] [4, 3, 2, 1]5. start 和 end 分别为 正数 和 负数 的情况下
>>> a [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[1:-6] [2, 3] >>> a[1:-6:-1] [] >>> a[-1:6] [] >>> a[-1:6:-1] [9, 8]6. 连续切片 操作
>>> a [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[:8][2:5][-1:] [5]7. 其他对象的切片操作
>>> t=(1,2,3,4) >>> t[1:3] (2, 3) >>> s="ABCDEFGH" >>> s[2:3] 'C' >>> for i in range(1,100)[2:3][-10:]: ... print(i) ... 3 >>> for i in range(1,100)[2::3][-10:]: ... print(i) ... 72 75 78 81 84 87 90 93 96 998. 切片的三个参数是表达式
>>> a [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[2+1:3*2:7%3] #a[3:6:1] [4, 5, 6]三.切片练习 取奇数位和偶数位
>>> a [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[1::2] [2, 4, 6, 8] >>> a[::2] [1, 3, 5, 7, 9]



