Anmeldemodul:
Egal auf welche Website wir gehen, wir stoßen oft auf diese Situation. Das Flussdiagramm sieht wie folgt aus:
Idee:
1. Wenn wir uns auf der Website anmelden , wir geben zuerst den Benutzernamen ein. Zu diesem Zeitpunkt werden uns einige Websites daran erinnern, ob der von uns eingegebene Benutzername nicht existiert , wir müssen ihn erneut eingeben oder uns registrieren. Natürlich lassen wir den Benutzer hier erneut eingeben.
2. Wenn der Benutzername vorhanden ist, müssen Sie ihn eingeben Wir wissen, dass wir bei der Eingabe des Passworts nicht überprüfen, ob das Passwort korrekt ist. Daher verlieren wir die Funktion, den Benutzer den Bestätigungscode eingeben zu lassen Zuerst das Passwort, aber lassen Sie den Benutzer den Bestätigungscode eingeben und überprüfen Sie zuerst, ob der vom Benutzer eingegebene Bestätigungscode korrekt ist
3. Wenn der Bestätigungscode falsch ist, ist der Benutzer falsch Sie werden aufgefordert, den Bestätigungscode erneut einzugeben. Wenn der Bestätigungscode korrekt ist, müssen Sie zu diesem Zeitpunkt erneut überprüfen, ob das Passwort korrekt ist Das Passwort ist falsch, der Benutzer muss das Passwort zu diesem Zeitpunkt erneut eingeben. Da der Benutzer zu diesem Zeitpunkt bereits den Benutzernamen eingegeben hat, ist es nicht erforderlich, den Benutzernamen erneut einzugeben, sondern nur das Passwort und den Bestätigungscode erforderlich; das heißt, geben Sie das Passwort erneut ein und geben Sie dann den Bestätigungscode ein. Wenn das Passwort korrekt ist, ist die Anmeldung erfolgreich. Andernfalls müssen Sie das Passwort und den Bestätigungscode erneut eingeben ;
Um dies zu erreichen, muss die Funktion des obigen Codes eine While-Schleife verwenden. Da sie Schicht für Schicht überprüft wird, muss die Eingabe des Benutzernamens eine Schleife sein, bis der Benutzer die eingibt Der Schlüssel liegt darin, sicherzustellen, dass der Benutzername korrekt ist, wenn das Passwort oder der Bestätigungscode verwendet wird. Wenn Sie einen Fehler machen, müssen Sie den Benutzernamen nicht erneut eingeben, da er sonst missachtet wird Zu diesem Zeitpunkt müssen Sie bedenken, dass der Zyklus gestoppt werden muss, wenn der Benutzer das nächste Mal das Passwort oder den Bestätigungscode eingibt.
Der Code ist wie folgt implementiert:
Der obige Code läuft wie folgt:
def login(name,password):'''用户登录模块,用户登录时候的各种设置,本次实现功能''''''用户登录验证的时候,一般会先判断验证码是否正确,因此要让用户首先验证验证码'''active = Truewhile True:while active: username = input("请输入你的用户名:")'''首先验证用户名是否存在'''users = []for user_list in userfile.usernames: users.append(user_list[0])if username in users: active = Falseelse: print("对不起,您输入的用户名不存在,请重新输入:") pwd = input("请输入你的密码:")while True:'''加入一个用户输入验证码的模块,让用户输入验证码'''verification_code = str(random.randint(0,9)) + chr(random.randint(65,90)) + str(random.randint(0,9)) + chr(random.randint(97,122)) print(verification_code) test_num = input("请输入验证码:")if test_num == verification_code.lower() or test_num == verification_code.upper():'''无论用户输入大小写都可以验证成功''''''用户验证成功后,开始进行用户自己的认证,是否注册,或者用户名正确'''breakelse: print("您输入的验证码有误,请重新输入!")if [username,int(pwd)] in userfile.usernames: print("Successful!")return (username,pwd)else: print("对不起,您输入的密码有误,请重新输入:")
Das Ausführungsergebnis des obigen Codes ist wie oben gezeigt. Wenn wir eine Schleife alleine stoppen möchten, können wir eine Kennung für diese Schleife festlegen, um die Schleife zu öffnen oder zu schließen Schleife. Schleife, damit diese Schleife beim Ausführen anderer Programme nicht geöffnet wird;
Active = True
while True:
solange aktiv ; >'''
Benutzer = [] Falsch
sonst : , bitte erneut eingeben: ") pwd = input(
"Bitte geben Sie Ihr Passwort ein:
")
Mit dem obigen Code haben wir eine solche Funktion erreicht, wenn wir diesen Zyklus stoppen wollen Der Bezeichner der inneren Schleife sei geschlossen.
Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in das Anmeldemodul in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!