所以我理解Python已经扩展了切片,它将用[start:end:step]抓取子字符串,默认值为开始和结束。
例如:
L = range(6)
>>>L[::2]
[0, 2, 4, 6]
好吧,有道理…start没有值,所以默认为0,然后加2。
>>>L[::-1]
[6, 4, 2, 0]
现在这是我真正困惑的地方。start没有值,所以它应该是0,但是它从list的后面开始…? ?不应该是[0,6,4,2]吗?为什么step = -1给出了从列表后面开始的特殊行为?
它与这里的其他内容一起记录(强调):
s[i:j:k]
如果i或j被省略或为None,则它们成为"结束"值(其结束取决于k的符号)。