您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
Python3中怎么实现模拟登录操作,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
模拟登录_要求:
1. 用户输入账号密码进行登录
2. 用户信息保存在文件内
3. 用户密码输入错误三次后锁定用户
逻辑图:

代码:
#!/usr/bin/env python3
# Author:Robert
# --*-- coding: utf-8 --*--
count = 0 #记录试错次数,计数项赋初始值
load = True #完成功能后退出,赋初始值
file = open("用户信息文件.txt",'r',encoding='utf-8')
file_lock = open("锁定用户信息文件.txt",'r+',encoding='utf-8')
line = eval(file.readline()) #将正确信息中的字符串转换成字典(原字符串为字典格式)
line_list = eval(file_lock.readline()) #将正确信息中的字符串转换成列表(原字符串为列表格式)
def out(): #定义重复代码,目的是帮助跳出while循环并关闭已打开的文档
global load
load = False #赋值load,为了跳出while循环
file_lock.close() #关闭正确用户信息文档
file.close() #关闭锁定用户信息文档
while load: #判断是否已完成功能
name = input("请输入用户名:")
password = input("请输入密码:")
if name in line and name not in line_list: #判断用户名是否正确,是否已被锁定
while count < 3:
if password == line[name]: #判断用户名是否对应正确的密码
print("您已成功登录")
out() #调用定义out方法
break
else: #说明未输入的正确的密码
count +=1
msg_count = '第%s次密码输入错误\n'%(count) #提示输入错误次数
print(msg_count)
if count < 3: #小于三次错误的输入,可以重新输入
password = input("密码错误,请重新输入密码:") #重新输入密码
elif count == 3: #判断是否已输错三次
print("已输错3次,账号已锁定")
line_list.append(name) #将已锁定信息加入锁定元组中
file_lock.seek(0) #输入指针移到开头,如果不移动会产生多个元组
file_lock.write(str(line_list)) #写入锁定信息
file_lock.tell() #获取当前的输入指针位置,如果不获取会产生多个元组
out()
break
elif name in line_list: #判断用户名是否在已锁定用户名中
print("该用户名已被锁定")
out()
break
else: #说明用户名不在正确用户名信息中
print("该用户名不存在")
out()用户信息文件.txt
{"name":"password","XiaoMing":"123456","Robert":"234567","Alex":"345678","haha":"123","hahage":"123","hahage2":"123","hahage3":"123"}
锁定用户信息文件.txt
['name']
关于Python3中怎么实现模拟登录操作问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。