Сдвинуть символы в строке

Необходимо сдвинуть символы в строке вправо n раз. Например:

input:  'qwertyuiopL'
output: 'wertyuiopLq'

Мой код:

s = 'qwertyuiopL'
n = 10
s = s[-n:] + s[:-n]
print(s)

Проблема в том, что, это работает только когда n > len(s)


Ответы (4 шт):

Автор решения: strawdog
from collections import deque
s = 'qwertyuiopL'
d = deque(s)
d.rotate(-1)
print(''.join(list(d)))

wertyuiopLq

→ Ссылка
Автор решения: Namerek

Если я правильно понял задачу то что-то вот такое

n = 10
inp = 'qwertyuiopL'
inp_l = list(inp)
for i in range(n):
    inp_l.insert(len(inp_l), inp_l.pop(0))

print(''.join(inp_l))
→ Ссылка
Автор решения: CrazyElf

Как уже писали, проще всего и понятнее всё-таки так, для любого n:

s = 'qwertyuiopL'
n = 123
print(s[n % len(s):] + s[:n % len(s)])
→ Ссылка
Автор решения: Plyusnin Alexandr
              s = 'qwertyuiopL'
              n = len(s) - 1
              s = s[-n:] + s[:-n]
              print(s)  
→ Ссылка