Répéter une chaîne de n fois et imprimer les n lignes

j'ai été coincé sur une question depuis quelques temps:

Je cherche à créer une fonction python qui utilise une chaîne de caractères et un entier positif. La fonction d'impression de la chaîne de n fois, pour n lignes. Je ne peut pas utiliser les boucles, je dois seulement utiliser la récursivité

par exemple

repeat("hello", 3)

hellohellohello
hellohellohello
hellohellohello

chaque fois que j'essaie de faire une fonction qui fait cela, la fonction diminue la longueur de la chaîne, progressivement:

par exemple

repeat("hello", 3)

hellohellohello
hellohello
hello

voici ce que mon code ressemble à ceci:

def repeat(a, n):
if n == 0:
    print(a*n)
else:
    print(a*n)
    repeat(a, n-1)

toute aide serait appréciée, merci!

  • Donc, vous êtes confus que le n-1 est en train de faire?
  • oui, je veux garder le nombre de fois que la chaîne est imprimé dans une ligne fixe sorte de paramètre, mais je veux que la fonction de répétition de la ligne n fois.
  • Astuce: vous pouvez modifier le premier argument de repeat la même façon que vous modifiez le second. Au lieu de passer n sur l'appel récursif, vous passez n-1. Donc au lieu de passer a, peut-être passer à autre chose?
InformationsquelleAutor Andrew Louis | 2016-10-12