Invalid literal for int() with base 10: 'g' / pas d'erreur de int/float

Résolu/Fermé
BatchBu1lder Messages postés 7 Date d'inscription vendredi 18 décembre 2020 Statut Membre Dernière intervention 22 février 2021 - 22 févr. 2021 à 16:00
jee pee Messages postés 40280 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 1 octobre 2024 - 22 févr. 2021 à 16:27
Bonjour,
Depuis plusieurs heures, je ne trouve pas de réponses à mon problème, et sur les forums, il n'y a pas ce que je cherche, bref
Voici l'erreur :
Une exception s'est produite : ValueError
invalid literal for int() with base 10: 'g'

Et le code qui peut être assez utile :

lose = False
tentatives = 10

while lose == False:
number_entered = input("Entrez un nombre : ")
try:
number_entered = int(number_entered)
number_entered > 0

#number_entered correcte : nombre = a + de 0

if number_entered < number_to_find:
print("Essayez plus grand")
tentatives = tentatives - 1

if number_entered > number_to_find:
print("Essayez plus petit")
tentatives = tentatives - 1

if number_entered == number_to_find:
print("Gagné en", 10 - tentatives, "coups !")
break
except:
print("VALEUR INCORRECTE !")
A voir également:

1 réponse

jee pee Messages postés 40280 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 1 octobre 2024 9 351
Modifié le 23 févr. 2021 à 01:25
Bonjour,

Là dans ce que tu donnes, number_to_find n'est pas défini, donc bien évidemment le try va tomber en erreur.

La ligne
number_entered > 0
n'a pas de sens, et tu ne testes pas les 10 tentatives atteintes.

PS : Pour la mise en forme des sources, au dessus de la zone d'édition de tes messages, il y a des icônes pour l'enrichissement du texte. Celle qui a cet aspect
<> ▼
permet d'appliquer au code, suivant une liste de valeurs, le format correspondant à sa nature.
Un petit tuto là : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

0