Repita a string para um determinado comprimento

Qual é uma maneira eficiente de repetir uma string com um determinado comprimento? Por exemplo:repeat('abc', 7) -> 'abcabca'

Aqui está meu código atual:

def repeat(string, length):
    cur, old = 1, string
    while len(string) < length:
        string += old[cur-1]
        cur = (cur+1)%len(old)
    return string

Existe uma maneira melhor (mais pitônica) de fazer isso? Talvez usando a compreensão da lista?

questionAnswers(13)

yourAnswerToTheQuestion