-----------------------------------------
編寫登錄接口
要求:1、輸入用戶名密碼
2、認證成功後顯示歡迎信息
3、輸錯三次後鎖定
--------------------------------------
#coding=utf-8
__author__ = 'wangwc'
import sys,os
count = 0
locked = 0
mark_user = 0
mark_passwd = 0
#獲取路徑
def cur_file_dir():
path = sys.path[0]
if os.path.isdir(path):
return path
elif os.path.isfile(path):
return os.path.dirname(path)
#print (cur_file_dir())
path = cur_file_dir()
#print(path)
path1 = path.replace("\\",'/') + '/'
#print (path1)
#path2 = path1 + '/'
#循環輸入
while count < 3:
name = input("Username:").strip()
if len(name) == 0:
print ("Username can not be empty....")
continue
key = input("Password:").strip()
if len(key) == 0:
print("The password can not be empty!Try again...")
continue
f = open(path1 + "username.txt","r")
userlist = f.readlines()
for user in userlist:
if user.strip() == name:
mark_user = 1
f.close()
if mark_user == 1:
f = open(path1 + "%s_lock.txt" %(name),"r")
locked = int(f.readline().strip())
f.close()
else:
print ("Username or Passsord wrong....")
break
if locked == 1:
print("Sorry, the username had been locked!!!Please call the system administrator...")
else:
f = open (path1 + "%s_passwd.txt" %(name),"r")
passwd = (f.readline().strip())
if passwd.strip() == key:
mark_passwd = 1
if mark_user == 1 and mark_passwd == 1:
f = open("%s_count.txt" %(name),"w")
f.write("0")
f.close()
print("%s,welcome BABY!" %(name) )
#input('Press Enter to exit')
else:
f = open("%s_count.txt" %(name),"r")
count = int((f.read().strip()))
f.close()
count +=1
f = open("%s_count.txt" %(name),"w")
f.write(str(count))
f.close()
print ("Username or password wrong!And the username '%s' has %d more chances to retry!" %(name,3 - count))
if(count == 3):
print ("'%s' has been locked!!!" %(name))
if os.path.exists(path1 + "%s_lock.txt" %(name)):
fobj = open(path1 + "%s_lock.txt" %(name),"w")
fobj.writelines("1\n")
else:
print ("Username or password wrong!")
continue