Rotate list elements

Moves the specified amount of elements to the start of the list.

  • Use slice notation to get the two slices of the list and combine them before returning.
def roll(lst, offset):
  return lst[-offset:] + lst[:-offset]
roll([1, 2, 3, 4, 5], 2) # [4, 5, 1, 2, 3]
roll([1, 2, 3, 4, 5], -2) # [3, 4, 5, 1, 2]