2016-08-31 5 views
-3

Ich habe ein Passwort-Checker in Python erstellt. Hier ist der Code, den ich verwendet habe:Probleme mit Python-Passwort-Checker

import easygui as eg 

def pword(): 
    global password 
    global lower 
    global upper 
    global integer 
    password = eg.enterbox(msg="Please enter your password") 
    length = len(password) 
    print(length) 
    lower = sum([int(c.islower()) for c in password]) 
    print(length) 
    upper = sum([int(c.isupper()) for c in password]) 
    print (upper) 
    integer = sum([int(c.isdigit()) for c in password]) 
    print (integer) 

def length(): 
    global password 
    if len(password) < 6: 
     eg.msgbox(msg="Your password is too short, please try again") 
    elif len(password) > 12: 
     eg.msgbox(msg="Your password is too long, please try again") 

def strength(): 
    global lower 
    global upper 
    global integer 
    if (lower) < 1: 
     eg.msgbox(msg="Please use a mixed case password with lower case letters") 
    elif (upper) < 1: 
     eg.msgbox(msg="Please use a mixed case password with UPPER clase letters") 
    elif (integer) < 1: 
     eg.msgbox(msg="Please try adding a number") 
    else: 
     eg.msgbox(msg="Strength Assessed - Your password is ok") 

while True: 
    pword() 
    length() 
    strength() 

answer = eg.choicebox(title="Try again?",msg="Would you like to try again?", choices=("Yes","No")) 
if answer !="Yes": 
    sys.exit() 

Wenn ich gehe, um das Modul zu laufen kommt es gerade mit der folgenden Meldung auf:

NEUSTART: C: \ Benutzer \ PGUSER72 \ AppData \ Local \ Programme \ Python \ Python35-32 \ Python Passwort 8.py

Als ich neu starten, es sagt nur NEUSTART - Shell

+1

Können Sie bitte Ihren Einzug korrigieren. – Harrison

+1

Zuerst bereinigen Sie Ihre Einrückung, dann beheben Sie die unnötige und unsichere Verwendung von Globals –

Antwort

0

ich Ihre Vertiefung

Ihr Code funktioniert, getestet auf Ubuntu 14.0 fixiert 4 LTS

EDIT:

auch getestet auf Windows 7 32-Bit-Python 2.7.12 enter image description here

Alles funktioniert gut. Wie läuft dein Skript?

+1

Ziemlich sicher, dass das OP Windows verwendet. – FamousJameous

+0

Ich habe gerade einen Testbericht zu Windows hinzugefügt – theBugger