Programme du jeu de la roulette
Résolu/Fermé
DarkSniper
-
8 avril 2015 à 19:13
FiceA Messages postés 34 Date d'inscription jeudi 28 mai 2015 Statut Membre Dernière intervention 24 août 2016 - 26 mars 2016 à 18:13
FiceA Messages postés 34 Date d'inscription jeudi 28 mai 2015 Statut Membre Dernière intervention 24 août 2016 - 26 mars 2016 à 18:13
A voir également:
- Roulette russe python
- Python est introuvable. exúcutez sans argument pour procúder ó l - Forum Python
- Citizen code python avis - Accueil - Outils
- \R python ✓ - Forum Python
- Chat roulette avis - Forum Vos droits sur internet
- Chatroulette exhibition : Peur pour la police ✓ - Forum Vos droits sur internet
3 réponses
Voici le programme avec chaque partie, mais j'ai un petit soucis avec la partie des gains et pertes car:
1- lorsque je donne le bon numéro, il affiche rien
2- et ensuite j'ai ce message d'erreur:
File "C:\Users\victor\Desktop\Test roulette.py", line 44, in <module>
if sargent[x] <= 0:
TypeError: 'int' object is unsubscriptable
Je pense que j'ai oublié plusieurs trucs mais je sais pas où... ça doit être un truc tout "con"...
Merci de votre aide et de votre patience!
1- lorsque je donne le bon numéro, il affiche rien
2- et ensuite j'ai ce message d'erreur:
File "C:\Users\victor\Desktop\Test roulette.py", line 44, in <module>
if sargent[x] <= 0:
TypeError: 'int' object is unsubscriptable
Je pense que j'ai oublié plusieurs trucs mais je sais pas où... ça doit être un truc tout "con"...
from random import randrange class Joueur: def __init__(self, nom, argent): self.nom = str(nom) self.argent = int(argent) self.numero = 0 self.mise = 0 nbJoueurs = int(input("Nombre de joueurs : ")) joueurs = [] sargent = input("Argent de départ : ") continuer_partie = True while continuer_partie: for x in range(0, nbJoueurs): joueurs.append(Joueur(input(("Numero choisit du joueur "+str(x+1)+" : ")), sargent)) for x in range(0, nbJoueurs): joueurs[x].mise = int(input("Mise du joueur "+str(x+1)+" : ")) #Affichage du numero gagnant (aléatoirement) numero_gagnant = randrange(1) print "La roulette tourne,...... tourne, ...... tourne, ...... tourne, et s'arrete sur le numero", numero_gagnant for x in range(0, nbJoueurs): if joueurs[x] == numero_gagnant: print "Felicitation, votre numero est le bon, vous obtenez ", joueurs[x].mise*35, "euros!" sargent[x] = sargent[x] + joueurs[x].mise*35 else: print "Desoler l'ami, c'est pas pour cette fois. Vous perdez votre mise qui est de", joueurs[x].mise, "euros" sargent[x] =sargent[x] - joueurs[x].mise # On interrompt la partie si le joueur est ruine for x in range(0, nbJoueurs): if sargent[x] <= 0: print("Vous etes ruine! C'est la fin de la partie.") continuer_partie = False else: # On affiche l'argent du joueur print("Le joueur"+str(x+1)+"a desormais", sargent[x], "euros") quitter = input("Souhaitez-vous quitter le casino (o/n) ? ") if quitter == "o" or quitter == "O": print("Vous quittez le casino avec vos gains.") continuer_partie = False
Merci de votre aide et de votre patience!
11 avril 2015 à 17:19
11 avril 2015 à 17:27
c'est l'argent de départ pour tous les joueurs (s pour start) qui est un int.
Pour accéder à l'argent d'un des joueur, il ne faut pas faire mais
Enfin, dans un souci d'optimisation, au lieu de
met plutôt: