String auf bestimmte Länge wiederholen

Was ist eine effiziente Methode, um eine Zeichenfolge bis zu einer bestimmten Länge zu wiederholen? Z.B:repeat('abc', 7) -> 'abcabca'

Hier ist mein aktueller Code:

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

Gibt es einen besseren (pythonischeren) Weg, dies zu tun? Vielleicht mit Listenverständnis?

Antworten auf die Frage(26)

Ihre Antwort auf die Frage