J'essaie actuellement d'écrire mon premier programme/application en Python en créant un outil que mon partenaire pourra utiliser lorsque nous jouerons à un jeu de cartes. Je viens juste de commencer à apprendre à programmer sérieusement, donc c'est peut-être une erreur de débutant que j'ai manquée, mais je n'arrive pas à attraper "autre chose" via l'entrée pour détourner la réponse de l'utilisateur.
Voici mon code :
def counting_up ():
round_total = 0
while True :
global game_level
cards = input("Enter Card: \n")
if cards.upper() == "A" or cards == "2" :
round_total += 20
if cards == "3" :
round_total += 3
if cards == "4":
round_total += 4
if cards == "5" :
round_total += 5
if cards == "6" :
round_total += 6
if cards == "7" :
round_total += 7
if cards == "8" :
round_total += 8
if cards == "9" :
round_total += 9
if cards == "10" or cards.upper() == "J" or cards.upper() == "Q" or cards.upper() == "K" :
round_total += 10
if cards == "0" :
game_level += 1
if cards.upper() == "END" :
game_state = 1
break
else :
print (f"{cards}, is not a valid value, please enter a valid value!")
print ("Your score this round was " + str(round_total))
return round_total
Lors du test, il ne semble pas passer par les contrôles logiques préalables avant de conclure que la valeur n'est pas valide. REMARQUE : cette fonction entière fonctionnait comme prévu et continue de fonctionner si je supprime l'instruction else : à la fin. Existe-t-il en Python quelque chose de similaire à une instruction case en Java qui pourrait fonctionner ?
Merci d'avance