python实现用户登录系统


Posted in Python onMay 21, 2016

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

#!/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
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()
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
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程序设计有所帮助。

Python 相关文章推荐
用Python的SimPy库简化复杂的编程模型的介绍
Apr 13 Python
约瑟夫问题的Python和C++求解方法
Aug 20 Python
Python实现约瑟夫环问题的方法
May 03 Python
python列表使用实现名字管理系统
Jan 30 Python
Python进阶之全面解读高级特性之切片
Feb 19 Python
对Django 中request.get和request.post的区别详解
Aug 12 Python
Python autoescape标签用法解析
Jan 17 Python
python3 sorted 如何实现自定义排序标准
Mar 12 Python
jupyter notebook 恢复误删单元格或者历史代码的实现
Apr 17 Python
Django表单提交后实现获取相同name的不同value值
May 14 Python
django inspectdb 操作已有数据库数据的使用步骤
Feb 07 Python
python基础入门之字典和集合
Jun 13 Python
python列表的常用操作方法小结
May 21 #Python
bat和python批量重命名文件的实现代码
May 19 #Python
批处理与python代码混合编程的方法
May 19 #Python
python实现汉诺塔递归算法经典案例
Mar 01 #Python
python中list列表的高级函数
May 17 #Python
python模拟Django框架实例
May 17 #Python
python采用django框架实现支付宝即时到帐接口
May 17 #Python
You might like
PHP网页游戏学习之Xnova(ogame)源码解读(十四)
2014/06/26 PHP
Laravel框架学习笔记之批量更新数据功能
2019/05/30 PHP
php设计模式之抽象工厂模式分析【星际争霸游戏案例】
2020/01/23 PHP
不错的新闻标题颜色效果
2006/12/10 Javascript
jQuery EasyUI API 中文文档 - ValidateBox验证框
2011/10/06 Javascript
jquery图片放大镜功能的实例代码
2013/03/26 Javascript
关于textarea提交的内容无法换行的解决办法
2013/04/09 Javascript
JavaScript使用cookie实现记住账号密码功能
2015/04/27 Javascript
JQuery实现左右滚动菜单特效
2015/09/28 Javascript
基于javascript实现彩票随机数生成(升级版)
2020/04/17 Javascript
关于cookie的初识和运用(js和jq)
2016/04/07 Javascript
页面get请求 中文参数方法乱码问题的快速解决方法
2016/05/31 Javascript
jQuery解析与处理服务器端返回xml格式数据的方法详解
2016/07/04 Javascript
AngularJS ng-repeat数组有重复值的解决方法
2016/10/23 Javascript
详解nodejs中exports和module.exports的区别
2017/02/17 NodeJs
Vue.Draggable实现拖拽效果
2020/07/29 Javascript
微信小程序 调用远程接口 给全局数组赋值代码实例
2019/08/13 Javascript
[01:01:36]Optic vs paiN 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
python基础之入门必看操作
2017/07/26 Python
python中的set实现不重复的排序原理
2018/01/24 Python
Python测试人员需要掌握的知识
2018/02/08 Python
Python实现的求解最小公倍数算法示例
2018/05/03 Python
python批量赋值操作实例
2018/10/22 Python
django小技巧之html模板中调用对象属性或对象的方法
2018/11/30 Python
python绘图模块matplotlib示例详解
2019/07/26 Python
使用python实现微信小程序自动签到功能
2020/04/27 Python
基于Python第三方插件实现西游记章节标注汉语拼音的方法
2020/05/22 Python
什么是虚拟内存?虚拟内存有什么优势?
2012/02/19 面试题
Ajax实现页面无刷新留言效果
2021/03/24 Javascript
物流专业大学生的自我鉴定
2013/11/13 职场文书
《泉水》教学反思
2014/04/11 职场文书
国旗下演讲稿
2014/05/08 职场文书
2014年信用社工作总结
2014/11/25 职场文书
校运会宣传稿大全
2015/07/23 职场文书
Kubernetes关键组件与结构组成介绍
2022/03/31 Servers
flex布局中使用flex-wrap实现换行的项目实践
2022/06/21 HTML / CSS