假设我有一个列表:
>>> numbers = list(range(1, 15))
>>> numbers
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
我需要使用切片符号仅对最后10个元素进行反转
首先,我尝试只使用切片符号而不进行反转
>>> numbers[-10:]
[5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
那么:
>>> numbers[-10::-1]
我期望得到 [14, 13, 12, 11, 10, 9, 8, 7, 6, 5]
但是实际得到的是 [5, 4, 3, 2, 1]
。
我可以这样解决这个问题:
numbers[-10:][::-1]
一切正常
[14, 13, 12, 11, 10, 9, 8, 7, 6, 5]
但我想知道为什么在我的情况下 numbers[-10::-1]
不起作用,如果有一种方法可以通过一个片段获得正确的结果。
numbers
包含了从1到14的整数,但不包括15。 - Hannes Ovrén