这是 Python 的切片索引语法:
切片索引语法最多能有 3 个参数,每个参数间用 冒号 相隔:
# 以下都是合法的切片索引语法
a[1] # 1 个参数
a[2:4] # 2 个参数
a[3:10:2] # 3 个参数
1 个参数。表示获取指定位置的一个元素,索引从 0 开始计数:
a = [1, 2, 3, 4]
a[0] # 1
a[2] # 3
2 个参数。表示截取某一段的元素,包含第一个索引,不包含第二个索引:
a = [1, 2, 3, 4, 5]
a[0:2] # 从 a[0](包含) 截取到 a[2](不包含),结果为 [1, 2]
a[2:3] # 从 a[2](包含) 截取到 a[3](不包含),结果为 [3]
3 个参数。在 2 个参数的基础上,指定步长,步长可以为负:
```python
a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
a[0:10:2] # 在 a[0:10] 的基础上,索引递增 2,结果为 [1, 3, 5, 7, 9]
你的代码中,第一个索引小于第二个索引,又使用了负步长,所以没有输出(应该是 s[3:0:-1])