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学习笔记 下载
Feb 10 Python
Python3单行定义多个变量或赋值方法
Jul 12 Python
Python神奇的内置函数locals的实例讲解
Feb 22 Python
Python实现使用request模块下载图片demo示例
May 24 Python
Python 使用 docopt 解析json参数文件过程讲解
Aug 13 Python
python-opencv获取二值图像轮廓及中心点坐标的代码
Aug 27 Python
PyTorch中permute的用法详解
Dec 30 Python
基于python实现计算且附带进度条代码实例
Mar 31 Python
django 数据库 get_or_create函数返回值是tuple的问题
May 15 Python
什么是Python中的顺序表
Jun 02 Python
Python使用Chrome插件实现爬虫过程图解
Jun 09 Python
详解Python中@staticmethod和@classmethod区别及使用示例代码
Dec 14 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
正则表达式语法
2006/10/09 Javascript
一个从别的网站抓取信息的例子(域名查询)
2006/10/09 PHP
PHP中使用curl入门教程
2015/07/02 PHP
以实例全面讲解PHP中多进程编程的相关函数的使用
2015/08/18 PHP
php 利用socket发送HTTP请求(GET,POST)
2015/08/24 PHP
PHP中对数组的一些常用的增、删、插操作函数总结
2015/11/27 PHP
js实现的倒计时按钮实例
2015/06/24 Javascript
使用node+vue.js实现SPA应用
2016/01/28 Javascript
jQuery实现带水平滑杆的焦点图动画插件
2016/03/08 Javascript
JavaScript中String对象的方法介绍
2017/01/04 Javascript
jquery实现文字单行横移或翻转(上下、左右跳转)
2017/01/08 Javascript
JS生成一维码(条形码)功能示例
2017/01/19 Javascript
JS实现去除数组中重复json的方法示例
2017/12/21 Javascript
如何在vue里添加好看的lottie动画
2018/08/02 Javascript
vue-cli3.0如何使用CDN区分开发、生产、预发布环境
2018/11/22 Javascript
webpack HappyPack实战详解
2019/10/08 Javascript
原生js实现文件上传、下载、封装等实例方法
2020/01/05 Javascript
[01:31](回顾)杀出重围,决战TI之巅
2014/07/01 DOTA
Django框架的中的setting.py文件说明详解
2018/10/15 Python
python程序运行进程、使用时间、剩余时间显示功能的实现代码
2019/07/11 Python
Django 批量插入数据的实现方法
2020/01/12 Python
python读取tif图片时保留其16bit的编码格式实例
2020/01/13 Python
使用python执行shell脚本 并动态传参 及subprocess的使用详解
2020/03/06 Python
Python3之外部文件调用Django程序操作model等文件实现方式
2020/04/07 Python
基于opencv实现简单画板功能
2020/08/02 Python
python源文件的字符编码知识点详解
2021/03/04 Python
CSS3——齿轮转动关键代码
2013/05/02 HTML / CSS
The Hut德国站点:时装、家居用品、美容等
2016/09/23 全球购物
伦敦剧院及景点门票:Encore Tickets
2018/07/01 全球购物
What's the difference between deep copy and shallow copy? (深拷贝与浅拷贝有什么区别)
2015/11/10 面试题
监理员的岗位职责
2013/11/13 职场文书
毕业研究生的自我鉴定
2013/11/30 职场文书
采购经理岗位职责
2014/02/16 职场文书
小学家长通知书评语
2014/12/31 职场文书
实施意见格式范本
2015/06/05 职场文书
2015年科学教研组工作总结
2015/07/22 职场文书