Python使用deque旋转left int list返回None

时间:2013-10-02 04:43:07

标签: python list deque

我只是想知道我的结尾是否存在语法错误。我有一个int列表,我想将它们向左旋转。我使用deque和rotate(-1)但是它返回None。

我正在寻找的结果的一个例子:

list1 = [1, 2 , 3]
rotateLeft = [2, 3, 1]

这是代码段。

from collections import deque

def rotate_left(nums):        
    return deque(nums).rotate(-1)

print rotate_left([1, 2, 3])
>>> None

任何人都可以告诉我,如果我做错了吗?

1 个答案:

答案 0 :(得分:2)

deque.rotate什么都不返回。

所以rotate_left应该是:

def rotate_left(nums):
    q = deque(nums)
    q.rotate(-1)
    return list(q)

修改数据的标准库中的几乎所有函数/方法都不返回任何内容。 (例外:dict.setdefault,..)