You need to enable JavaScript to run this app. Python基于字典的登录程序如何实现5次密码错误踢出系统功能
优惠活动
大模型
产品
解决方案
定价
更多

Python基于字典的登录程序如何实现5次密码错误踢出系统功能

登录程序新增5次错误尝试限制实现
  • 改造核心不需要改动你原有校验逻辑,只需要新增错误次数计数器,用循环包裹输入、校验流程,设置两个退出分支:
    • 账号密码校验通过时,直接输出登录成功并终止程序
    • 错误尝试次数累计到5次时,输出踢出提示并终止程序
  • 完全保留原有逻辑:字典存储账号密码映射、输入内容首尾去空格、账号密码匹配规则
  • 循环过程中可实时提示剩余尝试次数,优化交互体验

改造后可直接运行的完整代码

def main():
    username_password = {"Maria": "hola", "Victoria": "bye"}
    # 配置最大允许错误尝试次数
    max_attempts = 5
    # 记录当前累计的错误次数
    current_attempts = 0

    # 错误次数未达上限时持续循环输入校验
    while current_attempts < max_attempts:
        login_username = str(input("请输入您的用户名:\n"))
        login_password = str(input("请输入您的密码:\n"))
        # 保留原有的首尾空格去除逻辑
        login_username, login_password = login_username.strip(), login_password.strip()

        # 原有核心校验逻辑
        if login_username in username_password and login_password == username_password[login_username]:
            print("登录成功")
            # 校验通过直接退出函数,不触发错误计数
            return
        
        # 校验不通过,累加错误次数
        current_attempts += 1
        remaining = max_attempts - current_attempts
        if remaining > 0:
            print(f"用户名或密码错误,请重试,剩余可尝试次数:{remaining}")
        else:
            # 错误次数全部用完
            print("您已连续5次输入错误,已被踢出系统")


main()

运行逻辑说明

  • 登录校验通过时程序直接退出,不会累计错误次数,只要没达到5次错误就一直保留尝试机会
  • 每次校验失败自动累计错误计数,实时反馈剩余次数
  • 第5次校验仍失败时循环自动终止,直接输出踢出提示结束程序

内容的提问来源于stack exchange,提问作者Alan Calderon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.26 17:27:05