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

开发Python问答游戏时正确答案被判错误,是否为大小写敏感问题?

问题解答

是的,这就是大小写敏感导致的错误。

Python 中字符串的==比较默认是严格区分大小写的,你代码里判断的是'Jeff bezos'(首字母J大写),但用户输入的是jeff bezos(首字母j小写),两者不相等,所以被判定为错误。

解决方案

可以将用户输入的字符串统一转换为小写(或大写),再和目标答案的小写(或大写)版本比较,这样就能忽略大小写差异:

修改后的代码示例:

score = 0
question_n = 0

playing = input('Do you wish to start? (Yes-No)')
# 统一转小写优化开始输入的判断
if playing.lower() in ["yes", "y"]:
    question_n +=1
    ques = input(f'\n{question_n}. Who owns amazon? ')

    # 将用户输入转为小写,和小写的目标答案比较
    if ques.lower() == 'jeff bezos':
        print('Correct! You got 1 point.')
        score +=1
        print(f'Your score is : {score}')
    else:
        print('Incorrect')
        print(f'The correct answer is --> Jeff bezos. ')
        x = input('Press any key to exit..')
elif playing.lower() in ["no", "n"]:
    print('Thanks for trying me (:')

如果要同时处理用户输入前后多余空格的情况,可以加上strip()方法:

if ques.strip().lower() == 'jeff bezos':

这样即使用户输入 Jeff Bezos 这类带空格的内容,也能被正确判定为正确答案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 04:10:28