首页 > 编程 > Python > 正文

Python基础练习之用户登录实现代码分享

2020-01-04 16:29:30
字体:
来源:转载
供稿:网友

python/271391.html">python/59593.html">python版本为python3.5

1.要求

1)输入用户名密码
2)认证成功后显示欢迎信息
3)输错三次后锁定

2.需求分析

1)用户信息存储在文件中(login/config/user_login.txt)
2)用户输入用户名和密码
3)判断用户名是否存在,存在则继续,不存在则提示继续输入
4)判断输入的用户名是否已经被锁定,如果已锁定则退出程序,否则继续
5)匹配文件中的用户信息
6)如果匹配则打印出欢迎信息
7)如果输入3次密码错误,则锁定该用户名(login/config/name_lock.txt)

3.测试用户

bigberg:123abc
lc:123456
smallberg:111111
root:12345
dinasor:12321

# -*- coding: UTF-8 -*-#Author:Bigberg#定义一个循环计数count = 0#定义一个字典存储用户名和密码names={}#定义一个列表存储用户名name_exit = []#输入用户名username = input("username:")#判断输入的用户的用户是否在用户名单中with open("../config/name_login.txt",'r') as f:  while True:    line = f.readline().strip()    if not line:      break    else:      name = line.split(':')[0]      passwd = line.split(':')[1]      names[name] = passwdfor key in names:  name_exit.append(key)#判断用户名是否正确,不正确则继续输入while username not in name_exit:  print("The account is not exit.Check it again.")  username = input("username:")else:  # 读取锁定文件中的内容  with open("../config/name_lock.txt", "r") as f:    lock_name = f.read()  # 判断用户名是否在锁定文件中,如果在就退出程序  if username == lock_name:    print("Sorry.Your account has been locked.")    exit()  else:    # 3次输入密码的机会    while count < 3:      passwd_input = input("password:")      # 判断用户名和密码是否有效      if passwd_input == names[username]:        print("Welcome!", username)        break      else:        print("Error,please try again.")      count += 1      # 如果3次输入密码错误,则将用户名添加到锁定文件      if count == 3:        with open("../config/name_lock.txt", "w") as f:          f.write("%s" % username)        print("You have tried 3 times,and your account will be locked")

总结

以上就是本文关于Python基础练习之用户登录实现代码分享的全部内容,希望对大家有所帮助。有什么问题可以随时留言,小编会及时回复大家的。感谢朋友们对本站的支持!


注:相关教程知识阅读请移步到python教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表