python实现用户登录系统
作者:百衲本 发布时间:2023-10-13 13:17:22
标签:python,用户,登录
本文实例为大家分享了用户登录系统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('无效选项,程序已退出')
0
投稿
猜你喜欢
- 先看效果,实现一个图片左右摇动,在一般的H5宣传页,商家活动页面我们会看到这样的动画,小程序的动画效果不同于css3动画效果,是通过js来完
- 用div+css制作页面,想实现左右两部分固定宽度,而中间部分不固定,并随着屏幕分辨率的的变化而自动伸缩。大家可知道应该如何实现? &nbs
- 相信每个前端工程师都有自己喜爱的javascript框架,说情感也好,道信仰也罢,javascript框架带给人的不仅仅是便捷的开发,更有一
- 对于数字索引数组来说,通过 array_push()函数向数组中添加元素。array_push()函数将数组当成一个栈,将传入的变量压入该数
- 学习目的 掌握如何用ADO.NET插入新的记录 我们学得好快,今天做一个简易的新闻发布网页,可以说是个演示型的,只是让大家能理插入数据的最主
- Dreamweaver MX 2004的强大功能以及更加完善的人性化设置已经深受大家喜爱。在此笔者就谈
- 参与测试的浏览器:IE6 / IE7 / IE8 / FF3 / OP9.6 / SF3 / Chrome2操作系统:Windows我喜欢p
- 一个很普通的网页中显示LOGO图像,按照以往的页面制作经验,基本是在页面中插入图像即可(<img src="logo.gif
- 1、删除Oracal在注册表中的主项:regedit.exe->LocalMachine->Software->Oracl
- Demo里的三种方法:方法1是两层div,兼容FF3.1a+, Safari 3+, Chrome, IE6/7方法2是两层div,除了IE
- 如何 在Access中选择指定日期前的记录?我知道,在Access中不能使用DateDiff,那么我们怎样才能选择指定日期前的若干记录呢?虽
- 颜色的变化跟人类的智慧一样,是无穷的,每个阶段都会有流行的色彩,有属于一个时代的颜色!WEB2.0是一个概念,它宣扬,定位了一些东西,以用户
- 首先还是应该科普下函数参数传递机制,传值和传引用是什么意思?函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进
- 网上有这样一道题目:一个字符串String=“adadfdfseffserfefsefseetsdg”,找出里面出现次数最多的字母和出现的次
- 我认为多选列表具有完美的功能——只需按下Ctrl键,同时点击鼠标从列表中选择多个项目。以下是一个典型的多选列表框:选出你最喜爱的快餐:&nb
- 移动互联网被称为“第五次科技革命”,而随着iPhone和Android等智能手机的日渐流行和iPad等平板电脑的出现,移动互联网的潜力和趋势
- 大家都出书,我也很幸运的有了这本书,不过一本书的好与坏,错与对都是在于一个人的理解,web标准这个东西主要还是大家理解,理解的深
- 本文实例讲述了python实现的分析并统计nginx日志数据功能。分享给大家供大家参考,具体如下:利用python脚本分析nginx日志内容
- 最近心血来潮加上有点闲情,动手写了第一个JavaScript版的俄罗斯方块Easy Tetris.先上Easy Tetris俄罗斯方块游戏截
- 过年这段时间由于线上数据库经常压力过大导致响应非常缓慢甚至死机,咬咬牙下大决心来解决效率不高的问题!首先是由于公司秉承快速开发原则,频繁上线