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实现将汉字转换成汉语拼音的库
May 05 Python
举例讲解Python中字典的合并值相加与异或对比
Jun 04 Python
浅谈python 四种数值类型(int,long,float,complex)
Jun 08 Python
简单谈谈python中的多进程
Nov 06 Python
python 计算两个日期相差多少个月实例代码
May 24 Python
Flask框架Flask-Login用法分析
Jul 23 Python
python算法与数据结构之冒泡排序实例详解
Jun 22 Python
pycharm重命名文件的方法步骤
Jul 29 Python
Python 分发包中添加额外文件的方法
Aug 16 Python
python中逻辑与或(and、or)和按位与或异或(&amp;、|、^)区别
Aug 05 Python
matplotlib部件之矩形选区(RectangleSelector)的实现
Feb 01 Python
Python中with上下文管理协议的作用及用法
Mar 18 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
thinkphp特殊标签用法概述
2014/11/24 PHP
PHP保存带BOM文件的方法
2015/02/12 PHP
php中ob_flush函数和flush函数用法分析
2015/03/18 PHP
PHP rsa加密解密使用方法
2015/04/27 PHP
PHP MVC框架skymvc支持多文件上传
2016/05/26 PHP
将json对象转换为字符串的方法
2014/02/20 Javascript
javascript实现的元素拖动函数宿主为浏览器
2014/07/21 Javascript
基于JavaScript实现通用tab选项卡(通用性强)
2016/01/07 Javascript
jQuery获取某天的农历日期并判断是否除夕或新年的方法
2016/03/01 Javascript
EasyUi combotree 实现动态加载树节点
2016/04/01 Javascript
JQuery对ASP.NET MVC数据进行更新删除
2016/07/13 Javascript
JS访问DOM节点方法详解
2016/11/29 Javascript
[Bootstrap-插件使用]Jcrop+fileinput组合实现头像上传功能实例代码
2016/12/20 Javascript
jQuery插件echarts实现的多折线图效果示例【附demo源码下载】
2017/03/04 Javascript
js断点调试经验分享
2017/12/08 Javascript
JavaScript基础心法 数据类型
2018/03/05 Javascript
webpack 3.X学习之多页面打包的方法
2018/09/04 Javascript
通过angular CDK实现页面元素拖放的步骤详解
2020/07/01 Javascript
JS实现鼠标移动拖尾
2020/12/27 Javascript
[07:49]2014DOTA2国际邀请赛 Newbee夺冠后采访xiao8坦言奖金会上交
2014/07/23 DOTA
[01:29:46]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第二局
2016/02/27 DOTA
Python 使用requests模块发送GET和POST请求的实现代码
2016/09/21 Python
Jupyter安装nbextensions,启动提示没有nbextensions库
2020/04/23 Python
python爬虫正则表达式之处理换行符
2018/06/08 Python
解决python3 Pycharm上连接数据库时报错的问题
2018/12/03 Python
pandas读取CSV文件时查看修改各列的数据类型格式
2019/07/07 Python
Python3常见函数range()用法详解
2019/12/30 Python
Python实现CAN报文转换工具教程
2020/05/05 Python
Python自动创建Excel并获取内容
2020/09/16 Python
西班牙用户之间买卖视频游戏的平台:Wakkap
2020/03/21 全球购物
毕业生求职信的经典写法
2014/01/31 职场文书
会计专业毕业生自荐书
2014/06/25 职场文书
交通安全责任书范本
2014/07/24 职场文书
领导干部考核评语
2015/01/04 职场文书
大雁塔导游词
2015/02/04 职场文书
Python pandas之求和运算和非空值个数统计
2021/08/07 Python