目录
介绍切片
python
中切片是用来切割可迭代对象(容器)
格式:
object[start:end:step]
start:
切片的起始位置,如果没有值的话从头开始
end
:切片的结束位置,但是不包含
end
(前闭后开),如果没有值的话表示切割到结束为止
step
:步长,默认取值为
1
,如果为正数的情况表示从左往右,如果为负数表示从右往左
object[start:]:
表示从
start
开始切割到结束为止,从左往右
obeject[:end]
:表示从开始切割到
end
为止,但是不包含
end,
从左往右
obeject[start:end]
:表示从
start
开始到
end
结束,但是不包含
end,
从左往右
object[start:end:step]:
表示从
start
开始到
end
结束,但是不包含
end,step
为正从左往右,负从右往
左
1. 切割单个值
a = [0,1,2,3,4,5,6,7,8]
print(a[6])
结果:6
2. 切割完整对象
a = [0,1,2,3,4,5,6,7,8]
print(a[::])
print(a[::-1])
结果:
0,1,2,3,4,5,6,7,8
8,7,6,5,4,3,2,1,0
3. start和end全部取正数的情况
a = [0,1,2,3,4,5,6,7,8]
print(a[6:])
print(a[7:4:-1])
print(a[7::-1])
结果:
6,7,8
7,6,5
7,6,5,4,3,2,1,0
4.start和end全部取负数的情况
a = [0,1,2,3,4,5,6,7,8]
print(a[-6::])
print(a[:-6])
print(a[-1:])
print(a[-1:-4])
print(a[-5:-4])
结果
3,4,5,6,7,8
0,1,2
8
空集
4
5. start和end正负混合情况
a = [0,1,2,3,4,5,6,7,8]
print(a[1:-6:])
print(a[1:-6:-1])
print(a[-1:6])
print(a[-1:6:-1])
结果:
1,2
空集
空集
8,7
7. 切片中的三个参数为表达式
a = [0,1,2,3,4,5,6,7,8]
print(a[1+1:1*3:1*1])
结果:
2
8. 切片可以操作其他的对象
for i in range(0,100)[2::2][-10:-1]:
print(i)
结果:
80,82,84,86,88,90,92,94,96,98
总结:
1.
如果进行切片操作的时候,超出下标不会报错
2.
如果切片操作的时候方向相互矛盾的话,不会报错,返回的空
3.
在
python
中进行反向输出列表
第一种:循环
第二种:
[::-1]
第三种:
reverse()