单独给出步骤时切片如何工作?
How slicing works when step is given separately?
我有一个 list
对象,如下所示:
lst = [50,34,98,8,10]
语句print(lst[::][::-1][::-1][::-1][::-1])
的输出如下:
lst = [50,34,98,8,10]
请帮助我理解当 step
单独给出时切片是如何工作的
解释:
你首先做 lst[::]
这只是得到整个列表,它处理它是 lst[::1]
这给出:
>>> lst[::1]
[50, 34, 98, 8, 10]
>>>
然后您将倒转列表时间,但 4 是偶数所以根本不会倒转:
>>> lst[::-1]
[10, 8, 98, 34, 50]
>>> lst[::-1][::-1]
[50, 34, 98, 8, 10]
>>> lst[::-1][::-1][::-1]
[10, 8, 98, 34, 50]
>>> lst[::-1][::-1][::-1][::-1]
[50, 34, 98, 8, 10]
>>>
我有一个 list
对象,如下所示:
lst = [50,34,98,8,10]
语句print(lst[::][::-1][::-1][::-1][::-1])
的输出如下:
lst = [50,34,98,8,10]
请帮助我理解当 step
单独给出时切片是如何工作的
解释:
你首先做
lst[::]
这只是得到整个列表,它处理它是lst[::1]
这给出:>>> lst[::1] [50, 34, 98, 8, 10] >>>
然后您将倒转列表时间,但 4 是偶数所以根本不会倒转:
>>> lst[::-1] [10, 8, 98, 34, 50] >>> lst[::-1][::-1] [50, 34, 98, 8, 10] >>> lst[::-1][::-1][::-1] [10, 8, 98, 34, 50] >>> lst[::-1][::-1][::-1][::-1] [50, 34, 98, 8, 10] >>>