Etre redirigé sur python !!

Résolu
Leo Shady Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   -  
Groarh Messages postés 682 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je suis un debutant en Python
Je suis entrain d'écrire un programme de triple mot de passe et je cherche une fonction ou un outil pour rediriger l'utilisateur à une ligne au dessus afin de ne pas reécrire tout le code

voici le code

# Triple Password Program 
x=raw_input(' hello buddy : Gimme your password\n') 
if x=='ilovedunia1' : 
   y=raw_input('Good Now gimme your second password\n') 
   if y=='ilovedunia2' : 
      z=raw_input('Thats right its time for the last one\n') 
      if z=='ilovedunia3' : 
        print 'you are allowed to access' 
      else : 
        print 'you missed the 3rd password .. you are not allowed to access .. Please try again\n' 
        z=raw_input('Gimme the 3rd password\n') 
        if z=='ilovedunia3' : 
            print 'you are allowed to access' 
        else : 
            print 'you missed the 3rd password .. you are not allowed to access\n' 
   else : 
     print 'you missed the 2nd password .. you are not allowed to access .. please try again\n' 
     y=raw_input('Gimme your 2nd password\n') 
     #c'est ici ou je veux inserer le code de rediriction vers la ligne 5 
else : 
   print 'you missed the 1st password .. you are not allowed to access'


Merci d'avance
Bien cordialement
Leo
A voir également:

2 réponses

Groarh Messages postés 682 Date d'inscription   Statut Membre Dernière intervention   185
 
0
Leo Shady Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   15
 
Salut .. mais je ne crois pas que tu m'a compris !! je veux une fonction de redirection et pas une definition d'une fonction .. merci dans tous les cas ..
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Je pense au contraire qu'il t'a très bien compris...
J'explique : tu mets ton code dans une fonction et au lieu de faire des redirections tu rappelles la fonction. C'est largement plus propre, plus efficace, et t'y gagneras en maintenabilité.
Néanmoins, si tu veux vraiment faire ça, il faut jouer avec les boucles et conditions.
0
Leo Shady Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   15
 
ah OK merci cher ami .. j'ai pigé .. merci a vous deux .. ^^
0
Leo Shady Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   15
 
Bonsoir,
Est ce que cela est bien sachant que quand je le cuild/run ca ne marche pas ..

# Triple Password Program
def pass3(z) :
   z=raw_input('Thats right its time for the last one\n')
   if z=='ilovedunia3' :
      print 'you are allowed to access'
   else :
      print 'you missed the 3rd password .. you are not allowed to access .. please try again\n'
      pass3(z)

def pass2(y,z) :
   y=raw_input('Good Now gimme your second password\n')
   if y=='ilovedunia2' :
      pass3(z)
   else :
       print 'you missed the 2nd password .. you are not allowed to access .. please try again\n'
       pass2(y,z)

def pass1(x,y,z) :
   x=raw_input(' hello buddy : Gimme your password\n')
   if x=='ilovedunia1' :
      pass2(y,z)
   else :
      print 'you missed the 1st password .. you are not allowed to access .. please try again\n'
      pass1(x,y,z)


pass1(x,y,z)
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Je trouve ton programme super compliqué pour réaliser un "triple password".
Je verrais plutôt un truc du genre :
def main():
	mdp=['c1','c2','c3']
	
	for i in range(len(mdp)):
		while raw_input('password ?')!=mdp[i]
			print 'Le mot de passe %d est faux' %(i+1)
	print 'bienvenue'

Bien sur, à adapter à ton contexte ;-)))
0
Groarh Messages postés 682 Date d'inscription   Statut Membre Dernière intervention   185
 
Quand tu build/run et que ça ne marche pas, tu as des messages d'erreur. As-tu essayé de les comprendre ?
0