Probleme dans jeu de pierre feuille ciseau en python [Résolu]

Signaler
-
Messages postés
14792
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
17 mai 2021
-
Bonjour,

J'ai recemment commence a code un jeu en python et je ne comprends pas , le code tourne en boucle quelque sois mes interactions avec lui et je ne comprends pas ou est l'erreur... Merci d'avance cordialement
PS: Je sais bien que j'aurais pu faire une methode bien plus simple mais neanmoins je tiens vraiment a connaitre l'erreur dans ce code.




import random
point_joueur = "0"
point_bot = "0"
objet = ["Papier", "Pierre", "Ciseau"]
def selectRandom(objet):
return random.choice(objet)


def aleatoire():
while point_joueur and point_bot !="10":
choix = input("Voulez vous faire\n 1) Pierre \n 2) Feuille \n 3) Ciseau\n")


if selectRandom(objet) == "Papier" and choix == "Pierre":
print("Vous avez fait " + choix + "et le Bot " + selectRandom(objet))
print("Vouz avez perdu la manche... Ne perdez pas espoir :D")
point_bot + "1"
point_joueur + "0"
print("Vous avez " + point_joueur + "et le Bot en a " + point_bot)


elif selectRandom(objet) == "Pierre" and choix == "Pierre":
print("Il y a egalite ...... Retentez")

elif selectRandom(objet) == "Ciseau" and choix == "Pierre":
print("Vous avez fait " + choix + "et le Bot " + selectRandom(objet))
print("Vouz avez gagne la manche!!")
point_bot + "0"
point_joueur + "1"
print("Vous avez " + point_joueur + "et le Bot en a " + point_bot)
elif selectRandom(objet) == "Papier" and choix == "Ciseau":
print("Vous avez fait " + choix + "et le Bot " + selectRandom(objet))
print("Vouz avez gagne la manche!!!!")
point_bot + "0"
point_joueur + "1"
print("Vous avez " + point_joueur + "et le Bot en a " + point_bot)

elif selectRandom(objet) == "Pierre" and choix == "Ciseau":
print("Vous avez fait " + choix + "et le Bot " + selectRandom(objet))
print("Vouz avez perdu la manche... Ne perdez pas espoir :D")
point_bot + "1"
point_joueur + "0"
print("Vous avez " + point_joueur + "et le Bot en a " + point_bot)
elif selectRandom(objet) == "Ciseau" and choix == "Ciseau":
print("Il y a egalite ...... Retentez")

elif selectRandom(objet) == "Papier" and choix == "Feuille":
print("Il y a egalite ...... Retentez")

elif selectRandom(objet) == "Pierre" and choix == "Feuille":
print("Vous avez fait " + choix + "et le Bot " + selectRandom(objet))
print("Vouz avez gagne la manche!!")
point_bot + "0"
point_joueur + "1"
print("Vous avez " + point_joueur + "et le Bot en a " + point_bot)











aleatoire()


Configuration: Windows / Opera 73.0.3856.434

2 réponses

Messages postés
14792
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
17 mai 2021
287
Quand tu fais
while point_joueur and point_bot !="10":

Si point_joueur est <>None(ça sera toujours vrai ) ET point_bot != "10" (la chaine, donc toujours vrai aussi) ça continuera

Quand tu fais
point_bot + "0"

Tu génère une variable temporaire contenant point_bot suivi du caractère "0" puis tu jette cette variable.

Je pense que tu n'a pas bien compris comment fonctionne la programmation, essayes de reprendre un tutoriel depuis la base.
Bonjour, merci pour votre reponse. Je n'avais pas dutout pense au fait que c'etait debile de faire
while point_joueur and point_bot !="10":

D: je corrige ca et je vois. Et je ne doute pas que vous me disiez d'aller retourner a la base par mechancete neanmoins, ce n'est par pour ca que je suis venu sur ce forum x). bonne soiree
Messages postés
14792
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
17 mai 2021
287
C'est surtout car les bases ne semblent pas aquises.
Si ton objectif est de faire un compteur, ce n'est pas une comparaison de chaine, mais une comparaison numérique q'uil faut utiliser.