python---用户登录程序

需求:

1. 用户登录,判断用户名密码是否正确

2. 密码输入三次不对则锁定账号

3. 锁定账号无法登录

分析:

1. 输入账号,判断账号是否存在,即账号是否在账号文件中存在;

2. 如果账号存在,则判断密码是否正确,如果密码正确,则登录成功,密码不对,提示再次输入,超过三次,锁定账号,并写入锁定文件;

3. 如果账号不存在,则提示账号不存在

 1 # -*- coding:utf-8 -*-
 2 # LC
 3 username = input("please input your username:")         #输入用户名
 4 #检查用户名是否被锁住
 5 lock_read = open("lock_file.txt","r")
 6 for lock in lock_read:
 7     lock_user = lock.strip()        #取出lock文件里面的用户信息
 8     if username == lock_user:
 9         print("You have been locked!")
10         break
11     else:
12         continue
13 lock_read.close()                   #读取完毕
14 
15 if username != lock_user:
16     password = input("please input your password:")         #如果用户没有再lock文件中,则输入密码
17     with  open("account_file.txt") as user_info:            #打开用户账号文件
18         for account in user_info:                               #查看输入的用户是否再账号文件内
19             account_user = account.strip().split(" ")[0]
20             account_pass = account.strip().split(" ")[1]
21             if username == account_user:                        #如果输入的用户名在用户文件中存在
22                 if password == account_pass:
23                     print("welcome to login")               #密码正确,则判断登录成功
24                     break
25                 else:
26                     print("wrong password!")                #否则密码错误,重新输入密码,即可用再输入两次
27                     for count in range(0,2):
28                         count = count + 1
29                         password = input("please input your password:")
30                         if password == account_pass:
31                             print("welcome to login")          #如果再次输入的密码正确,则跳出
32                             break
33                         else:
34                             print("wrong password")
35                     if count == 2:                              #如果三次输错,则写入lock文件中,采用追加写入的方式
36                         lock_write = open("lock_file.txt","a+")
37                         lock_write.write("\n")
38                         lock_write.write(username)
39                         lock_write.close()
40         if username!=account_user:                                     #如果账号文件内没有此账号,则提出没有此用户信息
41             print("No this user")
View Code

 

账号文件: 

account_file.txt

clv 123
gl 123
View Code

锁定文件:

 lock+_file.txt

1 clv
View Code

 

初次编写,看老男孩视频,想了很久,折腾了个大概,还是蛮开心的

posted on 2017-06-11 22:01  clv  阅读(3838)  评论(2编辑  收藏  举报

导航