Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def ascii(s):
- return ".".join([str(ord(c)) for c in s]) ##fonct convertissant un str en str ascii séparé par un point
- mdp=str(input("Entrer un mot de passe :")) ##dmd du mdp en tant que chaine de chr
- nb8=0 #Création des diff variables utilisés pdt le programme
- maj=0
- dig=0
- spe=0
- err=0
- if len(mdp)<8: ##vérification que le mdp fait plus de 8 chr
- nb8=1
- else:
- err=1 ##si mdp de 8lettres ou + alors condit1 ok
- code=(ascii(mdp)) #convertissement du mdp a l'aide de la fonct
- code="."+code+"." #ajout de points aux prem et dern terme pour que la ligne 19 detecte aussi les caracteres en 1e et dern position
- for i in range(48): #pr i jusqua 48e terme soit 47 (48=1 en ascii)
- l="."+(str(i))+"."
- t=(code.find(str(l))) #cheche dans mdp en ascii de la valeur ascii d'un caractere special entouré de points
- if t != -1:
- spe=1
- if err != 2:
- err=err+1 #cond caractere special rempli? si oui condit2 ok (if pour le valider quune fois)
- for i in mdp: #pour ts les termes du mdp
- if i.isupper() == True: #Y'a t'il une majuscule?
- maj=1
- if i.isdigit() == True: #Y'a t'il un nombre?
- dig=1
- if maj==1 and dig==1:
- err=err+1 ##condition maj et chiffre remplies? si oui condit3 ok
- if err != 3: #ttes condits ok ? sinon mdp invalide
- print("Mot de passe invalide:")
- else:
- print("Mot de passe valide.")
- if nb8==1: ## pk mdp invalide
- print("-Votre mot de passe ne contient pas assez de caractères.")
- if maj==0:
- print("-Votre mot de passe ne contient pas de majuscule.")
- if dig==0:
- print("-Votre mot de passe ne contient pas de chiffre.")
- if spe==0:
- print("-Votre mot de passe ne contient pas de caractère spécial.")
- print("Les caracteres spéciaux accéptés sont: ! # $ % & ' ( ) * + - , . / et espace ")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement