I want to rotate k element in a list in python. For example, n = 7, k = 3, and the array [1,2,3,4,5,6,7] is rotated to [5,6,7,1,2,3,4].

Here is the statement I wrote. It seems to work in the command line.

```
nums = nums[k%len(nums):] + nums[:k%len(nums)]

```

But when I encapsulate it in a function like:

```
def rotate(nums, k):
    nums = nums[k%len(nums):] + nums[:k%len(nums)]
    return

```

I want to modify nums directly, but this function doesn't work.

I know that I can use a for loop like:

```
for i in range(k):
    nums.insert(0,nums.pop())

```

but I want to know why the previous method doesn't work?