Problème d'appel de variable dans une fonction

AlexOnAir Messages postés 2 Date d'inscription samedi 8 octobre 2011 Statut Membre Dernière intervention 15 mai 2012 - 14 mai 2012 à 19:59
AlexOnAir Messages postés 2 Date d'inscription samedi 8 octobre 2011 Statut Membre Dernière intervention 15 mai 2012 - 15 mai 2012 à 08:43
Bonsoir !

Je suis actuellement en train de coder un petit programme, et après plusieurs essais pour tenter de résoudre mon problème, je décide de faire ce petit post pour avoir un peu d'aide.

J'expose ce problème :

J'ai 3 fichiers .py =>
1 pour lancer les fonctions des autres fichiers (start.py)
1 pour une fonction "newSexe" (newSexe.py)
1 pour une fonction "newClasse" (newClasse.py)

Je lance mon programme avec start.py, j'apelle la fonction newSexe, elle fait son travail, elle utilise d'ailleurs 2 variables => "sexe" et "determinant".
Mon programme revient à start.py et lance la seconde fonction "newClasse".
Seulement voilà : newClasse a besoin de ces deux variables qui sont "sexe" et "determinant".

Le code :

#start.py

from newSexe import newSexe
from newClasse import newClasse

def start():
    print("::simulation de la création d'un personnage::\ncreation de votre personnage").upper()
    newSexe()
    newClasse(sexe2, determinant)#Ici, j'ai ce petit warning : undefined name "sexe2"
                                                              #undefined name "determinant"
    
start()


#newSexe.py

global sexe2
global determinant

def newSexe():
    """Création du sexe du personnage"""
    
    print("CHOIX DU SEXE :\n")
    print("1.Masculin\n2.Feminin\n")
    sexe = input("Choix : ")
    
    if sexe == 1:
        sexe2 = "Masculin"
        determinant = "un"
    
    elif sexe == 2:
        sexe2 = "Feminin"
        determinant = "une"
    
    else:
        print("Cette option est incorrect, veuillez réessayer !")
        newSexe()
    
    print("Votre personnage est maintenant de sexe {} !").format(sexe2)
    
    return sexe2, determinant


#newClasse.py

def newClasse(sexe2, determinant):
    """Création de la classe du personnage"""
    
    print("CHOIX DE LA CLASSE :\n")
    
    if sexe2 == "Masculin":
        print("1.Guerrier\n2.Archer\3.Soigneur\4.Magicien")
        classe = input("Choix : ")
        
        if classe == 1:
            classe = "Guerrier"
        
        elif classe == 2:
            classe = "Archer"
            
        elif classe == 3:
            classe = "Soigneur"
        
        elif classe == 4:
            classe = "Magicien"
            
        else:
            print("Cette option est incorrect, veuillez réessayer !")
            newClasse()
    
    elif sexe2 == "Feminin":
        print("1.Guerrière\n2.Archère\3.Soigneuse\4.Magicienne")
        classe = input("Choix : ")
        
        if classe == 1:
            classe = "Guerrière"
        
        elif classe == 2:
            classe = "Archère"
            
        elif classe == 3:
            classe = "Soigneuse"
        
        elif classe == 4:
            classe = "Magicienne"
    
        else:
            print("Cette option est incorrect, veuillez réessayer !")
            newClasse()
            
    
    
    print("Votre personnage est maintenant {} {} !").format(determinant, classe)


Merci pour votre aide !

1 réponse

AlexOnAir Messages postés 2 Date d'inscription samedi 8 octobre 2011 Statut Membre Dernière intervention 15 mai 2012
15 mai 2012 à 08:43
Résolu.
0
Rejoignez-nous