本帖最后由 凌九霄 于 2018-8-26 12:11 编辑
- a = [ 1, 2, 3, 4, 5, 6 ]
- a.insert(0, a.pop())
- b = a[ : ]
- b.insert(0, b.pop())
- c = b[ : ]
- c.insert(0, c.pop())
- d = c[ : ]
- d.insert(0, d.pop())
- e = d[ : ]
- e.insert(0, e.pop())
- f = e[ : ]
- f.insert(0, f.pop())
- print(a)
- print(b)
- print(c)
- print(d)
- print(e)
- print(f)
复制代码
这个更灵活点,能处理任意长度的
- def larray(lst, result=[ ]):
- i = len(result)
- i += 1
- if i <= len(lst):
- x = lst[ : ]
- x.insert(0, x.pop())
- result.append(x)
- larray(x)
- return result
复制代码
- print(larray([x for x in range(1,7)]))
- [[6, 1, 2, 3, 4, 5], [5, 6, 1, 2, 3, 4], [4, 5, 6, 1, 2, 3], [3, 4, 5, 6, 1, 2], [2, 3, 4, 5, 6, 1], [1, 2, 3, 4, 5, 6]]
- print(larray([x for x in range(1,10)]))
- [[9, 1, 2, 3, 4, 5, 6, 7, 8], [8, 9, 1, 2, 3, 4, 5, 6, 7], [7, 8, 9, 1, 2, 3, 4, 5, 6], [6, 7, 8, 9, 1, 2, 3, 4, 5], [5, 6, 7, 8, 9, 1, 2, 3, 4], [4, 5, 6, 7, 8, 9, 1, 2, 3], [3, 4, 5, 6, 7, 8, 9, 1, 2], [2, 3, 4, 5, 6, 7, 8, 9, 1], [1, 2, 3, 4, 5, 6, 7, 8, 9]]
复制代码 |