有没有办法遍历 Python 列表中的所有值,但从特定索引开始?
例如:
li = ['a', 'b', 'c', 'd']
从索引 1 开始循环并打印出结果。我的预期输出是:
['b', 'c', 'd', 'a']
我知道使用两个“for 循环”可以完成这项工作,但有没有更好的方法来做到这一点?
请您参考如下方法:
好吧,你可以使用内置的 collections.deque类,它支持 "rotating" :
>>> from collections import deque
>>> li = deque(['a', 'b', 'c', 'd'])
>>> li.rotate(-1)
>>> li
deque(['b', 'c', 'd', 'a'])
以防万一你真的想要一个列表作为结果,你总是可以再次将它转换回来:
>>> list(li)
['b', 'c', 'd', 'a']
