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

Python条件判断语句异常:输入正确答案仍返回‘wrong’

问题原因与解决方案

你的代码问题出在数据类型不匹配:input()函数获取的用户输入默认是字符串类型,而answer = 2 * 10得到的是整数类型。字符串"20"和整数20在Python中属于不同类型,直接用==比较会返回False,所以哪怕输入正确答案,也会触发wrong的输出。

修正方法有两种:

  • 方法1:将用户输入转换为整数类型
print("what is 2 x 10")
answer = 2 * 10
user_answer = int(input("answer: "))  # 转换为整数

if answer == user_answer:
    print("correct")
else:
    print("wrong")
    print(f"the answer was {answer}")
  • 方法2:将正确答案转换为字符串类型
print("what is 2 x 10")
answer = str(2 * 10)  # 转换为字符串
user_answer = input("answer: ")

if answer == user_answer:
    print("correct")
else:
    print("wrong")
    print(f"the answer was {answer}")

如果需要处理用户输入非数字的情况,可以添加异常捕获:

print("what is 2 x 10")
answer = 2 * 10
try:
    user_answer = int(input("answer: "))
    if answer == user_answer:
        print("correct")
    else:
        print("wrong")
        print(f"the answer was {answer}")
except ValueError:
    print("请输入有效的数字答案")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 19:22:02