Ceci est une question vraiment basique, et je m'excuse pour sa simplicité, mais j'ai été la recherche de la réponse et essayer une syntaxe différente pendant des heures sans chance. J'utilise python pour créer un menu texte pour un programme chiffré. J'utilise une boucle while pour un message d'erreur quand une touche invalide est pressée, mais elle boucle même si la condition est fausse.While condition de boucle
purpose = input("Type 'C' for coding and 'D' for decoding: ")
while purpose.upper() != "D" or "C":
purpose = input("Error, please type a 'C' or a 'D': ")
if (purpose.upper() == "C"):
do_something()
if (purpose.upper() == "D"):
do_something()
Pour une raison quelconque le message d'erreur est affiché quel que soit appuyer sur la touche. Merci beaucoup pour votre aide!
Votre aide est grandement appréciée! Merci – bdawg425
La façon pythonique de faire ceci est vraiment: 'while but.upper() pas dans (" C "," D "):' – Saish
@Saish +1 très vrai! (réponse mise à jour) – alfasin