题目:
列表位移:请编写程序实现列表元素循环左移指定位置。(列表切片)
分析:
1)列表没有提供移位操作,所以必须一个元素一个元素的移位。
循环左移的原理:
2)循环左移的原理:
代码:
def test(_list, k):
x = _list[k - 1::-1]
y = _list[:k - 1:-1]
return list(reversed(x + y))
_list = list(range(20))
print(_list)
print(test(_list, 3))
输出结果:
--------------------------------------------------------------------------------
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
[3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 0, 1, 2]
--------------------------------------------------------------------------------