Bonjour je créer un petit projet en python pour passer le temps et malheureusement j'ai un soucis avec la boucle je crois je vous remercie si quelqu'un peu me dire le problème

Encore une fois tu compares game_choice_roulette (qui est une str) avec 1 (qui dans ton code) est un nombre entier int. Du coup if_game_choice == 1 est évalué à False et tu ne rentres pas dans le if (tu reviens directement au début de la boucle while).
Le 09 avril 2022 à 19:39:20 :
Encore une fois tu comparesgame_choice_roulette(qui est une str) avec 1 (qui dans ton code) est un nombre entier int. Du coupif_game_choice == 1est évalué à False et tu ne rentres pas dans le if (tu reviens directement au début de la boucle while).
donc que dois je faire ?
Le 09 avril 2022 à 20:21:01 aku7 a écrit :
Le 09 avril 2022 à 19:39:20 :
Encore une fois tu comparesgame_choice_roulette(qui est une str) avec 1 (qui dans ton code) est un nombre entier int. Du coupif_game_choice == 1est évalué à False et tu ne rentres pas dans le if (tu reviens directement au début de la boucle while).donc que dois je faire ?
compare une str avec une str

qu'elle est le problème avec la liste ?
random.choice(["0", "1", '2", "3", "4", "5", ...])

Le 09 avril 2022 à 21:37:06 :
Essaye de lire l'erreur dans la console c'est toujours le même problème.
Tu compares du text avec des nombres
La solution peut être de convertir le text en nombre
Le 09 avril 2022 à 21:37:06 :
Est-ce que tu comprends quand on parle de string, int et autres types de variables ou c'est une notion que tu n'as jamais vu ?
Le 09 avril 2022 à 22:09:35 :
Le 09 avril 2022 à 21:37:06 :
Est-ce que tu comprends quand on parle de string, int et autres types de variables ou c'est une notion que tu n'as jamais vu ?
honnêtement je comprends string je viens de comprendre int le probléme viens que j'ai du mal a savoir quand y placer ou pas
Le 09 avril 2022 à 22:15:30 :
Le 09 avril 2022 à 22:09:35 :
Le 09 avril 2022 à 21:37:06 :
Est-ce que tu comprends quand on parle de string, int et autres types de variables ou c'est une notion que tu n'as jamais vu ?
honnêtement je comprends string je viens de comprendre int le probléme viens que j'ai du mal a savoir quand y placer ou pas
D'accord, donc tu as plusieurs types.
Le type string qui représente les chaines de caractères ("hello world", ...), le type int qui sont les entiers (1 ,50 ,99 ,...), et bien d'autres.
Mais tu peux aussi avoir la chaine de caractères "50", qui n'est donc pas un entier mais bien du "texte".
C'est pour ça que ton programme plante et te dit qu'il n'arrive pas à réaliser l'opération de comparaison entre du texte et des chiffres (money_mise_roulette <= money).
Quand tu fais :money_mise_roulette = input("Combien voulez vous miser ?")
Tu récupères une chaine de caractères (la fonction input donne une chaine de caractères).
Par contre, la variable money est un entier (money = 500), donc tu ne peux pas comparer les deux.
Comme money_mise_roulette est une valeur numérique, c'est plus logique de l'avoir sous la forme d'un entier et tu peux donc transformer cette chaine de caractères en un entier comme tu l'as fait précédement avec la fonction int().
Ce qui donne :money_mise_roulette = int(input("Combien voulez vous miser ?"))
Je vois une autre erreur dans ton code à la ligne 36, tu oublies d'affecter la valeur à money.
money = money + money_mise_roulette*36
Le 09 avril 2022 à 22:58:34 :
Le 09 avril 2022 à 22:15:30 :
Le 09 avril 2022 à 22:09:35 :
Le 09 avril 2022 à 21:37:06 :
Est-ce que tu comprends quand on parle de string, int et autres types de variables ou c'est une notion que tu n'as jamais vu ?
honnêtement je comprends string je viens de comprendre int le probléme viens que j'ai du mal a savoir quand y placer ou pas
D'accord, donc tu as plusieurs types.
Le type string qui représente les chaines de caractères ("hello world", ...), le type int qui sont les entiers (1 ,50 ,99 ,...), et bien d'autres.
Mais tu peux aussi avoir la chaine de caractères "50", qui n'est donc pas un entier mais bien du "texte".
C'est pour ça que ton programme plante et te dit qu'il n'arrive pas à réaliser l'opération de comparaison entre du texte et des chiffres (money_mise_roulette <= money).Quand tu fais :
money_mise_roulette = input("Combien voulez vous miser ?")
Tu récupères une chaine de caractères (la fonctioninputdonne une chaine de caractères).Par contre, la variable
moneyest un entier (money = 500), donc tu ne peux pas comparer les deux.Comme
money_mise_rouletteest une valeur numérique, c'est plus logique de l'avoir sous la forme d'un entier et tu peux donc transformer cette chaine de caractères en un entier comme tu l'as fait précédement avec la fonctionint().
Ce qui donne :money_mise_roulette = int(input("Combien voulez vous miser ?"))
merci ton explication est clair et m'as beaucoup aider mais ou point ou j'en suis j'ai fais ceci
encore une fois sa doit être le meme types d'erreurs mais je ne comprends pas vraiment comment la résoudre la
Le 09 avril 2022 à 23:46:18 :
encore une fois sa doit être le meme types d'erreurs mais je ne comprends pas vraiment comment la résoudre la
Pas tout à fait.
Ici, la fonction random.choice() attend une liste avec les différentes possibilités comme paramètre.
Tu dois donc mettre tes deux valeurs dans une liste comme ceci ["red", "black"]
Ce qui donne :
tirage_color_choice = random.choice(["red", "black"])https://www.w3schools.comm/python/ref_random_choice.asp
Ton money + money_mise_roulette*2 doit être affecté à une variable, même erreur qu'avant.
Qu'essayes-tu de faire ici int(money_mise_roulette = input("Combien voulez vous miser ?"))
C'est de le résultat de la fonction input que tu dois transformer en entier donc c'est :
money_mise_roulette = int(input("Combien voulez vous miser ?"))Comme money_mise_roulette et money sont deux entiers, tu n'as pas besoin de les transformer en entier sur la ligne suivante if int(money_mise_roulette) <= int(money):.
Et au passage, tu ne retires jamais la mise du joueur, donc il va toujours gagner de l'argent.
Le 10 avril 2022 à 00:49:53 :
Tonmoney + money_mise_roulette*2doit être affecté à une variable, même erreur qu'avant.Qu'essayes-tu de faire ici
int(money_mise_roulette = input("Combien voulez vous miser ?"))
C'est de le résultat de la fonction input que tu dois transformer en entier donc c'est :money_mise_roulette = int(input("Combien voulez vous miser ?"))Comme money_mise_roulette et money sont deux entiers, tu n'as pas besoin de les transformer en entier sur la ligne suivante
if int(money_mise_roulette) <= int(money):.Et au passage, tu ne retires jamais la mise du joueur, donc il va toujours gagner de l'argent.
merci c'est bon ce que je voulais faire est finit merci beaucoup