1、概念
切片可以理解为对 list 或 tuple 或 str 的截取操作
2、语法
[开始索引位置 : 结束索引位置 - 1 : 每隔几个元素取一个值]
可以理解为左闭右开
Tips:
⑴ 如果开始索引位置是0,则可以省略。例如:
[:5]
⑵ 如果结束索引位置是 list 或 tuple 或 str 的长度 - 1,则也可以省略。例如:
[1:len('这是一句话。') - 1]
⑶ 如果 每隔几个元素取一个值 为1,则也可以省略。例如:
[1:5] 和 [1:5:1] 的结果是一样的
⑷ 如果 开始索引位置 和 结束索引位置 - 1 都省略,可以实现复制功能。
[:]
⑸ 如果 开始索引位置 是负数,表示倒数着取值。
3、示例
⑴ 取出 list 的前10个元素
L = list(range(20))
print(L[:10]) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
⑵ 取出从第3个开始,往后的元素
print(list(range(7))[3:]) # [3, 4, 5, 6]
⑶ 取出1-20的所有奇数
L = list(range(1, 21))
print(L[::2]) # [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
⑷ 复制字符串
L = list(range(5))
print(L[:]) # [0, 1, 2, 3, 4]
⑸ 取出 tuple 的倒数第1个元素
t = (1, 2, 3, 4, 5, 6, 7)
print(t[-1:]) # (7,)