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

Python中if/else分支语句无法完整执行 仅触发else分支问题

问题根因

代码存在两处问题,直接导致条件判断始终进入else分支的是大小写匹配逻辑错误,另外还存在语法错误会导致程序无法正常启动:

  • 首行对输入结果调用了.upper()方法,所有用户输入都会被转换为全大写字符串,例如输入ready会得到'READY'、输入pass会得到'PASS',但后续if/elif分支的匹配值写的是全小写的'ready'和'pass',条件永远无法成立,自然每次都会执行else分支。
  • 第一个print语句存在单引号嵌套错误:print ('Okay, let's go!) 外层用单引号标记字符串边界,字符串内部let's的单引号会被Python识别为字符串结束标记,且该行末尾缺失字符串闭合单引号,会直接触发语法报错。
修复后可运行代码
question = input('ready/pass').upper() 

if question == 'READY':
    print("Okay, let's go!")
elif question == 'PASS':
    print('Sad to see you go...')
    quit()
else:
    print("Sorry, I don't understand ")
可选调整方案

如果不想把判断值改成大写,直接删掉首行的.upper()调用即可,修改后首行代码为:
question = input('ready/pass')
后续分支的判断值保持原来的小写'ready'、'pass'就能正常匹配。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 13:48:13