J'ai imbriqué une boucle for dans une autre. La première boucle répète simplement cinq fois la deuxième boucle; la deuxième boucle répète cinq fois le même bloc de code simple.
Au total, ces boucles devraient effectuer le même travail vingt-cinq fois.
1. Hello
Je m'attendais à ce que la sortie soit:
1. Hello. 2. Hello. 3. Hello. 4. Hello. 5. Hello.
3 Réponses :
Vous y êtes presque. Ajoutez simplement une ligne supplémentaire
x = 0
for y in range(0, 5,):
for z in range(0, 5,):
print(str(int(x + 1)) + ". Hello")
x += 1
Oh, merci, je n'avais pas réalisé que je devais modifier séparément la valeur de la variable lorsque je l'utilisais en boucle.
Vous ne mettez pas à jour la valeur de x lorsque vous parcourez.
Essayez ceci:
x = 0
for y in range(0, 5,):
for z in range(0, 5,):
x+=1
print(str(x) + ". Hello")
vous pouvez également utiliser ceci:
i = 0
for y in range(0, 5):
for z in range(0, 5):
i = i+1
print(str(i) + "." " Hello.")
Le nombre ne change jamais car vous n'incrémentez jamais
xPour être clair, vous ajoutez 1 à
xdansint (x + 1)mais vous ne stockez pas le résultat dansx. Comme certaines réponses le suggèrent, en séparant le calcul et le stockagex = x + 1oux + = 1de l'impression du résultatprint (str (x ) + ". Bonjour"), vous résolvez le problème. Certains langages vous permettraient de tout faire en une seule fois, mais l'utilisation de l'affectation en Python ressemble à l'affectation d'une valeur à un paramètre nommé, doncprint (x = x + 1)confond Python et n'est pas très clair pour commencer.