当前位置:脚本大全 > > 正文

python3编程过程(Python3模拟登录操作实例分析)

时间:2022-01-16 00:28:34类别:脚本大全

python3编程过程

Python3模拟登录操作实例分析

本文实例讲述了Python3模拟登录操作。分享给大家供大家参考,具体如下:

模拟登录_要求:

1. 用户输入账号密码进行登录
2. 用户信息保存在文件内
3. 用户密码输入错误三次后锁定用户

逻辑图:

python3编程过程(Python3模拟登录操作实例分析)

代码:

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • #!/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']

    希望本文所述对大家Python程序设计有所帮助。

    原文链接:https://blog.csdn.net/weixin_39099836/article/details/78388688

    上一篇下一篇

    猜您喜欢

    热门推荐