本文實例為大家分享了使用者登入系統python實作程式碼,供大家參考,具體內容如下
#注意事項:
1、使用python3執行程序。按提示輸入1或2,登入或登出程式
2、輸入使用者名稱後,若使用者名稱已鎖定及無效使用者名,程式會登出,請確保輸入正確。
3、輸入使用者名稱正確後,輸入密碼。使用者名稱正確的情況下,密碼連續輸錯三次,使用者將被鎖定,禁止登入系統
#!/usr/local/env python #coding:utf-8 #Auto:Panwenbin #function: lock_file=open('file_lock.txt','r+') user_pass=open('username_file.txt','r+') count=0
##
cmd=input(''' 1:登录系统 2:退出系统 请输入您的操作:''') if cmd.isdigit() and int(cmd)==2: exit() elif cmd.isdigit() and int(cmd)==1: while count <3:#只要重试不超过3次就不断循环 username=input('请输入您的用户名:') for i in lock_file.readlines(): #判断用户名是否在锁文件中 i=i.split() if username in i[0]: print('对不起 %s 已锁定'%username) exit()
match = False for j in user_pass.readlines(): user,password = j.strip('\n').split() #去掉每行多余的\n并把这一行按空格分成两列,分别赋值为user,passwd两个变量 if username == user: #判断输入的用户是否存在 passwd=input ('请输入密码:') if password == passwd: print ('用户名和密码正确') match = True break elif password != passwd:#在用户名正确的前提下,判断输入的密码是否正确 for i in range(2): passwd=input ('密码错误,请重新输入密码:') if password == passwd: print ('用户名和密码正确') match = True break
if username != user :#判断用户不存在 print('您输入用户名不存,程序已退出') exit() elif match == False :#如果match还为False,代表上面的循环中跟本就没有match上用户名和密码 print('密码和用户名不匹配,尝试超过三次,用户被锁定') lock_file.write('%s \n'%username) lock_file.close() user_pass.close() exit() elif match==True: print('登录成功') break else: print('无效选项,程序已退出')#以上就是本文的全部內容,希望對大家學習python程式設計有所幫助。 更多python用戶登入系統相關文章請關注PHP中文網!
#