服务器之家

服务器之家 > 正文

python实现用户登录系统

时间:2020-08-23 12:19     来源/作者:百衲本

本文实例为大家分享了用户登录系统python实现代码,供大家参考,具体内容如下
注意事项:
1、使用python3执行程序。按提示输入1或2,登录或退出程序
2、输入用户名后,如果用户名被锁定及无效用户名,程序会退出,请确保输入正确。
3、输入用户名正确后,输入密码。用户名正确的情况下,密码连续输错三次,用户将被锁定,禁止登录系统

?
1
2
3
4
5
6
7
#!/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
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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()
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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程序设计有所帮助。

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
最新idea2020注册码永久激活(激活到2100年)
最新idea2020注册码永久激活(激活到2100年) 2020-07-29
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
返回顶部