python之简单登陆
简单的登陆
要求:
1.用户名输错3次,系统退出
2.密码输错3次,账号被禁用
3.使用文件操作知识
流程图:

项目代码:
def login():
i=0
while i <3 :
name = input("username:")
password = input('password:')
name_txt=open('uname.txt','r')
for line in name_txt.readlines(): #循环用户文件
(uname,passwd,lock) = line.strip('\n').split()#提取用户名,密码,跟锁信息
if uname == name:
if lock == 'true':
f = 0
while f < 3:
if passwd != password:
if f == 2:
print('账号/密码错误过多,账号已被锁定,请联系管理员')
old = uname + ' ' + passwd + ' ' + lock + '\n' #组合原来的用户信息
new_lock = 'fales'
new = uname + ' ' + passwd + ' ' + new_lock + '\n' #组合新的用户信息
d_f = open('uname.txt', 'r')
d = d_f.read().replace(old, new) #读取旧的用户信息,并替换
d_f.close()
print(d)
g_f = open('uname.txt', 'w+') #以写读方式打开原有文件(如果觉得不保险,可以将老文件备份,写入新的文件中)
g = g_f.write(d) #写入新的用户信息到文件
g_f.close()
name_txt.close()
exit(1)
else:
f += 1
print('账号/密码错误,还剩%s次' % (3 - f))
password = input('password:') #让用户重新输入密码
else:
print('Welcom') #登陆成功
name_txt.close()
exit(0)
# else:
# print('账号/密码错误过多,账号已被锁定,请联系管理员')
# name_txt.close()
# exit(1)
else:
print('账号已被锁定,请联系管理员')
name_txt.close()
exit(1)
else:
pass #按行搜索用户,没有搜索到就PASS让循环继续
else:
i += 1
if i == 3:
print("账号/密码错误次数过多,已被锁定,请联系管理员")#账号不存在(防止人刷账号,所以提示为这个)
name_txt.close()
exit(1)
else:
print("账号/密码有误,请重新输入")
continue
if __name__ == '__main__':
login()
简单登陆
python之简单登陆的更多相关文章
- Python实现简单登陆验证(文件操作)
利用python编写一个简单的登陆验证 代码主要功能: 利用Python实现简单的登陆验证,代码主要有两个部分组成: 第一部分:登陆页面,作用是实现用户名和密码的输入 利用两个输入函数input()来 ...
- 利用python实现简单登陆注册系统
#!/usr/bin/env python # -*- coding:utf-8 -*- def login(username,password): ''' :param username:用户名 : ...
- python实现简单登陆代码
#-*-coding:utf-8 -*- import getpass i1 = raw_input("UserName:") #请输入用户名 i2 = getpass.getpa ...
- python编写简单的html登陆页面(4)
python编写简单的html登陆页面(4) 1 在python编写简单的html登陆页面(2)的基础上在延伸一下: 可以将动态态分配数据,建立表格,存放学生信息 2 实现的效果如下: 3 动 ...
- python编写简单的html登陆页面(3)
1 在python编写简单的html登陆页面(2)的基础上在延伸一下: 可以将静态分配数据,建立表格,存放学生信息 2 加载到静态数据 3 html的编写直接在表格里添加一组数据就行了 4 V ...
- python编写简单的html登陆页面(2)
1 在python编写简单的html登陆页面(1)的基础上在延伸一下: 可以将动态分配数据,实现页面跳转功能: 2 跳转到新的页面:return render_template('home1.ht ...
- Python tkinter 实现简单登陆注册 基于B/S三层体系结构,实现用户身份验证
Python tkinter 实现简单登陆注册 最终效果 开始界面 注册 登陆 源码 login.py # encoding=utf-8 from tkinter import * from ...
- Python 实现简单的 Web
简单的学了下Python, 然后用Python实现简单的Web. 因为正在学习计算机网络,所以通过编程来加强自己对于Http协议和Web服务器的理解,也理解下如何实现Web服务请求.响应.错误处理以及 ...
- 【小白学爬虫连载(10)】–如何用Python实现模拟登陆网站
Python如何实现模拟登陆爬取Python实现模拟登陆的方式简单来说有三种:一.采用post请求提交表单的方式实现.二.利用浏览器登陆网站记录登陆成功后的cookies,采用get的请求方式,传入c ...
随机推荐
- L85
Surgical Never Events Happen Nevertheless Surgeons call them "never events", because they ...
- android自定义控件(三) 增加内容 自定义属性 format详解
转自 http://www.gisall.com/html/35/160435-5369.html 1. reference:参考某一资源ID. (1)属性定义: <declare-stylea ...
- ICE 迁移64位安装问题
昨天手贱,在apt-get install 后有一大堆,上百个安装包not upgrade, 发现有提示apt-get autoremove,犹豫了很久后还是忍不住执行了autoremove:这个命令 ...
- python之django入门
一.搭建开发环境 使用virualenv创建虚拟python环境 pip install virtualenv [root@master djiango]# find / -name virtuale ...
- echo命令的简单用法和实例
在CentOS 6.8版本下,通过实例的形式,展现选项和参数的灵活运用,可以简明的了解echo的用法. 一.语法:echo [SHORT-OPTION]… [STRING]… :echo [选项]…[ ...
- python的paramiko模块的安装与使用
一:简介 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. 由于使用的是python这样的能够跨平台运行的语言,所以所有python支 ...
- Oracle数据去重
一.完全重复数据去重方法 具体思路是,首先创建一个临时表,然后将DISTINCT之后的表数据插入到这个临时表中;然后清空原表数据;再讲临时表中的数据插入到原表中;最后删除临时表. 对于表中完全重 ...
- Bind 远程连接DNS服务器时出现 rndc: connection to remote host closed
使用命令:rndc -s 192.168.1.2 status 连接远程的bind 搭建的DNS服务器时出现下面的错误: rndc: connection to remote host close ...
- ASP.NET MVC (Umbraco)中如何设置网站超时自动退出
原文章请参考 https://edgewebware.com/2014/06/automatically-log-out-members-send-login-page-umbraco/ 在网站开发 ...
- php array数组(第二部分)
array_fill() 用给定的键值填充数组 参数 index 必须.规定返回数组的起始索引. 参数 number 必须.规定填充的元素的数量,其值必须大于0. 参数 value 必须.规定用于填充 ...