首页 > 代码库 > python——登陆接口设计(循环方法)

python——登陆接口设计(循环方法)

近日重新整理了登陆接口设计程序,感觉以前的代码没有注释,让园子的其他童鞋读起来比较费劲。也没有流程图和程序运行说明。

1.流程图

技术分享

2.user_file.txt&lock_file.txt文件内容

(1) user_file.txt

Abel 123
Bbel 1234
Cbel 123456

(2) lock_file.txt

Dbel

3.程序运行说明

(1)输入用户名,程序对比lock_file.txt。如果存在则提示该用户已经被锁定,退出程序。

(2)程序查找用户名是否在user_file.txt中,如果不在提示用户,并退出程序。

(3)用户输入密码,连续输入三次以内,密码正确。提示欢迎,并退出程序。

(4)密码连续输入错误3次,提示用户已经被锁定,并将用户名写入lock_file.txt中。退出程序。

4.程序代码

 1 import os 2  3 user_file = open(use_file.txt, r)  # 打开user_file.txt 4 user_list = user_file.readlines()  # 一次性将user_file.txt中的内容加载到内存中 5 user_file.close()  # 关闭user_file.txt 6  7 while True: 8     lock_file = open(lock_file.txt, r+)  # 打开lock_file.txt 9     lock_list = lock_file.readlines()  # 将lock_file.txt中的内容加载到内存中10     lock_file.close()  # 关闭lock_file.txt11 12     login_Success = False  # 设置标记位,用于跳出循环13     user_name = input(Please enter your name:.strip())    # 输入用户名14     for line1 in lock_list:15         line1 = line1.split()   # 将lock_file.txt中的信息读取到line1中16         if user_name == line1[0]:   # 如果用户名在line1中提示信息并退出整个程序17             print("对不起!您的用户名已经被锁定,请联系网站管理员。")18             exit()19     for line2 in user_list:20         line2 = line2.split()   # 将user_file.txt中的信息读取到line2中21         if user_name == line2[0]:   # 如果用户名在line2中进入for循环(输入密码三次错误锁定)22             for i in range(3):  # 计数器,记录密码输入错误次数23                 password = input(Please enter your password.strip())  # 输入密码24                 if password == line2[1]:    # 如果password在line2[1]中,显示欢迎信息,并退出整个程序25                     print("欢迎 %s 登陆Abel网站!" % user_name)26                     login_Success = True27                     break28             else:   # 密码输入错误次数超过3次,将用户名写入lock_file.txt中29                 f = open(lock_file.txt, a)30                 f.write(%s\n % user_name)31                 f.close()32                 print("连续输入3次错误密码,您的用户%s已经被锁定,请联系网站管理员。" % user_name)   # 提示用户已经锁定,并退出整个程序33                 login_Success = True34                 break35             if login_Success:36                 break37         else:   # 用户名不在line2中,提示用户名不存在。并退出整个程序38             print("您输入的用户名不存在,请重新输入或注册")39             exit()40     if login_Success:41         break

 

python——登陆接口设计(循环方法)