Shi Fu Mi

Signaler
Messages postés
2
Date d'inscription
mardi 11 septembre 2012
Statut
Membre
Dernière intervention
11 septembre 2012
-
 caca -
Bonjour à tous,
je débute tout juste avec Python et j'ai un problème en codant un petit shifumi


pfc=""
import random
def tirage_ordi :
    rep = random.randint (1, 3)

    if rep == 1 :
        print ("pierre")
    elif rep == 2 :
        print ("feuille")
    else :
        print ("ciseaux")

    if pfc == rep :
        print ("égalité")
    else :
        if pfc==1 and rep==3 :
            print ("Vous avez gagné(e)")
        else :
            if pfc==2 and rep==1:
                print ("Vous avez gagné(e)")
            else :
                if pfc 3 and rep 2:
                    print ("Vous avez gagné(e)")
                else :
                    print ("Vous avez perdu(e)")

while 1:

    while pfc!="pierre" or pfc!="feuille" or pfc!="ciseaux" :
        print ("Pierre, feuille, ou ciseaux?")
            

        pfc = input()

        if pfc == "pierre" :
            pfc = 1
        else :
            if pfc == "feuille" :
                pfc = 2
            else :
                if pfc == "ciseaux" :
                    pfc = 3
                else :
                    print ("try again")



Sur la troisième ligne,le ":" n'est pas considéré comme valable et je ne comprend pas pourquoi.
Merci d'avance pour votre aide, et n'hésitez pas à me conseiller si j'ai fais d'autres erreurs.

1 réponse

Messages postés
179
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
21 mai 2014

Tu dois également dire quels arguments prend ta fonction.

exemple sans arguments:

def tirage_ordi( ):



exemple avec arguments:
def tirage_ordi( a, b ):
tu peux également mettre juste des variables a (correspondant à ce que le joueur 1 joue ) et b ( correspondant à se que le joueur 2 joue) ensuite tu pourra créer deux listes vide qui correspondent au score de chacun pour finalement créer une boucle while qui ne s'arretera que lorsque la liste n°1 ou n°2 atteindra le score 3
je sais que ça change beaucoup en final ton programme mais ça a l'avantage de le rappetisser énormement et de pouvoir comptabiliser les scores des deux joueurs.