0
votes

Python ne passe-t-il pas pendant la boucle?

counter = 1 
while counter:
    print(counter) 
    counter=counter + 1 
    if counter==True:
        print("NOPE, False") 
    if counter == 0:
        print("NOPE, 0") 
    if counter==False:
        print("YES, True") 
    elif counter==(0 or False):
        print("YES")
What am I doing wrong?
For what reason do I have repetition 111111 at the output?
I want it to alternately print the texts below depending on whether the number is zero or some other number?Update:
Thanks for the help, I tried to create a program that will change
values (increase number) and print a message with a while-loop.
After your help and clarification, it is clear that without more conditions and redirects I will not be able to get different outputs / text, so the task itself is not well set at the beginning.
Now I look stupid to myself when I look at my idea and this attempt...

1 commentaires

Pourquoi vérifiez-vous des intents contre les bools?


3 Réponses :


1
votes

La réponse est parce que compteur est une variable de type INT, vous devez le convertir en un type booléen, comme: xxx


0 commentaires

2
votes

Les entiers positifs sont évalués comme true et le compteur est toujours positif. Ainsi, la boucle tandis que la boucle fonctionnera infinisly.

Je ne sais pas quel est le but de votre code, mais généralement lorsque vous travaillez avec des compteurs, une boucle tandis que la forme est de la forme: xxx < / Pré>

Ceci exécutera la boucle tandis que le compteur atteint la valeur de max_iter.


0 commentaires

0
votes

Dans ce cas exemple que vous avez écrit la valeur du compteur sera toujours "HUTTY". Si vous écrivez pendant le compteur: Le conditionnel sera toujours vrai que si vous définissez la valeur du compteur pour être soit spécifiquement 0, soit sur 0, soit FAUX.


0 commentaires