Se connecter

Informatique

Programmation

Sujet : problème de type python
1
eau-lowcost
Niveau 5
21 mai 2022 à 22:50:16

salut les kheys

je suis un cours sur udemy c'est un bootcamp python, 100 jours = 100 exercices

là jdois faire une machine à café virtuelle et j'ai une erreur qui doit être débile à un endroit mais je comprends pas pourquoi ça marche pas

je veux comparer une variable à une variable dans un dictionnaire et ça me dit qu'il y a un problème de type

ligne de code : if valeur_money < MENU["espresso"]["cost"]:

erreur : TypeError: '<' not supported between instances of 'str' and 'float'

je comprends l'erreur en soi mais je comprends pas quelle valeur n'est pas un float et comment convertir une valeur en float dans ce cas là

merci pour les conseils que vous pourrez m'apporter les kheys

soyiy
Niveau 5
21 mai 2022 à 23:11:35

Je suis pas un pythonista, mais je crois que tu dois convertir ta string en float :

float(valeur_money)
if float(valeur_money) < MENU["espresso"]["cost"]:
soyiy
Niveau 5
21 mai 2022 à 23:14:17

(Quand tu lis une valeur depuis le terminal, elle est typée en string, il faut ensuite la convertir en float ou en int si c'est une valeur numérique.)

eau-lowcost
Niveau 5
21 mai 2022 à 23:56:47

j'ai compris mon erreur tout seul au final mais merci quand même de ta réponse, en fait j'avais essayé de faire pareil mais avec le dictionnaire et evidemment ça n'avait pas marché mais j'avais pas pensé à faire l'inverse

soyiy
Niveau 5
22 mai 2022 à 00:04:08

Le 21 mai 2022 à 23:56:47 :
j'ai compris mon erreur tout seul au final mais merci quand même de ta réponse, en fait j'avais essayé de faire pareil mais avec le dictionnaire et evidemment ça n'avait pas marché mais j'avais pas pensé à faire l'inverse

:ok:

Magrozz
Niveau 7
22 mai 2022 à 00:57:42

Le 21 mai 2022 à 22:50:16 :
erreur : TypeError: '<' not supported between instances of 'str' and 'float'

je comprends l'erreur en soi mais je comprends pas quelle valeur n'est pas un float

Il te le dit dans le message d'erreur : str à gauche et float à droite.
Sinon tu peux vérifier avec la fonction type : print(type(valeur_money)).

1
Sujet : problème de type python
   Retour haut de page
Consulter la version web de cette page