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

Python循环卡在错误环节:输入Yes后无法执行对应命令

问题原因及修复方案
  • 核心故障点:大小写不匹配
    你把输入内容转成了全大写(FA=FA.upper()),但判断输入合法性的条件里,用的是首字母大写的('Yes', 'No')。转大写后的'YES'或'NO'根本不在这个元组里,所以不管输入什么,都会一直卡在错误输入的循环里。

  • 具体修复步骤

    1. 把合法性判断的字符串改成全大写,和转大写后的输入匹配:
      while FA not in ('YES', 'NO'):
      
    2. 后续的循环判断也要对应改成全大写:
      while FA == 'YES':
      

    或者换一种思路,统一转成小写后判断,代码更简洁:

    FA = input('Are there assignments to grade? Yes/No:').lower()
    while FA not in ('yes', 'no'):
        print('Please enter a valid input: either Yes or No')
        FA = input('Are there any assignments to grade? Yes/No:').lower()
    # 后续判断用 FA == 'yes'
    
  • 额外小问题
    代码里第二个输入提示的单词拼错了:assingments应该是assignments,建议修正避免歧义。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 03:05:32