You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

带长度限制的随机密码生成器输入重提示功能实现问题求助

密码长度输入校验实现方案

现有代码问题说明

  • return 语句仅可在Python函数内部使用,直接写在全局代码中会触发语法错误,无法实现重新执行输入逻辑的效果
  • 未使用循环结构包裹输入逻辑,代码只会执行一次输入操作,无法实现重复提示用户输入的需求

正确实现代码

while True:
    # 捕获非数字输入异常,避免程序崩溃
    try:
        length = int(input('\n请输入密码长度:'))
    except ValueError:
        print("输入无效,请输入数字")
        continue
    
    # 长度校验
    if length < 8:
        print('密码长度过短,必须不少于8个字符')
    elif length > 16:
        print('密码长度过长,必须不多于16个字符')
    else:
        print('密码长度符合要求')
        # 校验通过,跳出循环
        break

# 后续密码生成逻辑可在此处执行,此时length为合法值

逻辑说明

  • 通过while True构建无限循环,只要输入不符合要求就会自动重新进入输入流程
  • 新增非数字输入的异常处理,覆盖用户输入字母、符号等非法格式的场景
  • 校验通过后执行break跳出循环,即可拿到合法的长度值继续后续开发

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 10:24:03