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


Posted in Python onNovember 08, 2017

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] = passwd
for 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入门之三角函数全解【收藏】、python好玩的项目—色情图片识别代码分享、Python实现一个简单的验证码程序等,有什么问题可以随时留言,小编会及时回复大家的。感谢朋友们对本站的支持!

Python 相关文章推荐
Python ORM框架SQLAlchemy学习笔记之数据查询实例
Jun 10 Python
Python中类型检查的详细介绍
Feb 13 Python
详解python实现线程安全的单例模式
Mar 05 Python
详解Python 函数如何重载?
Apr 23 Python
Python配置文件处理的方法教程
Aug 29 Python
利用Tensorboard绘制网络识别准确率和loss曲线实例
Feb 15 Python
Python基于read(size)方法读取超大文件
Mar 12 Python
python实现简单学生信息管理系统
Apr 09 Python
python多线程实现同时执行两个while循环的操作
May 02 Python
python 利用opencv实现图像网络传输
Nov 12 Python
python“静态”变量、实例变量与本地变量的声明示例
Nov 13 Python
Python中tqdm的使用和例子
Sep 23 Python
python实现简单中文词频统计示例
Nov 08 #Python
python中如何正确使用正则表达式的详细模式(Verbose mode expression)
Nov 08 #Python
python如何使用正则表达式的前向、后向搜索及前向搜索否定模式详解
Nov 08 #Python
Python入门之三角函数全解【收藏】
Nov 08 #Python
Python入门之三角函数tan()函数实例详解
Nov 08 #Python
Python入门之三角函数sin()函数实例详解
Nov 08 #Python
Python入门之三角函数atan2()函数详解
Nov 08 #Python
You might like
剧场版动画《PSYCHO-PASS 3 FIRST INSPECTOR》3月27日日本上映!
2020/03/06 日漫
php简单提示框alert封装函数
2010/08/08 PHP
限制ckeditor上传图片文件大小的方法
2013/11/15 PHP
是 WordPress 让 PHP 更流行了 而不是框架
2016/02/03 PHP
PHP实现抽奖功能实例代码
2020/06/30 PHP
一实用的实现table排序的Javascript类库
2007/09/12 Javascript
表单切换,用回车键替换Tab健(不支持IE)
2011/07/20 Javascript
js屏蔽鼠标键盘(右键/Ctrl+N/Shift+F10/F11/F5刷新/退格键)
2013/01/24 Javascript
jquery实现可拖动DIV自定义保存到数据的实例
2013/11/20 Javascript
location.href用法总结(最主要的)
2013/12/27 Javascript
jquery实现清新实用的网页菜单效果
2015/08/28 Javascript
js中unicode转码方法详解
2015/10/09 Javascript
AngularJS入门教程之链接与图片模板详解
2016/08/19 Javascript
微信小程序 在Chrome浏览器上运行以及WebStorm的使用
2016/09/27 Javascript
详解ES6中的let命令
2020/04/05 Javascript
原生JS实现瀑布流插件
2018/02/06 Javascript
把vue-router和express项目部署到服务器的方法
2018/02/21 Javascript
vue项目中使用AES实现密码加密解密(ECB和CBC两种模式)
2019/08/12 Javascript
vue-property-decorator用法详解
2019/12/12 Javascript
[01:02:20]Mineski vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
Python编程中运用闭包时所需要注意的一些地方
2015/05/02 Python
pyqt5实现按钮添加背景图片以及背景图片的切换方法
2019/06/13 Python
使用Python爬虫库requests发送请求、传递URL参数、定制headers
2020/01/25 Python
Python计算IV值的示例讲解
2020/02/28 Python
python如何实时获取tcpdump输出
2020/09/16 Python
Python 制作查询商品历史价格的小工具
2020/10/20 Python
详解CSS3中border-image的使用
2015/07/18 HTML / CSS
希腊香水和化妆品购物网站:Parfimo.gr
2019/10/03 全球购物
运动会广播稿500字
2014/01/28 职场文书
2014年教师节演讲稿范文
2014/09/10 职场文书
群众路线教育党员自我剖析材料
2014/10/06 职场文书
2014年机关工会工作总结
2014/12/19 职场文书
户外活动总结
2015/02/04 职场文书
小学一年级数学教学反思
2016/02/16 职场文书
高三英语教学反思
2016/03/03 职场文书
学校团代会开幕词
2016/03/04 职场文书