gpt4 book ai didi

python - IF 语句直接跳到 ELSE

转载 作者:行者123 更新时间:2023-12-01 02:42:48 25 4
gpt4 key购买 nike

首先说我对 python 完全陌生,我必须做一个学校项目,并且我被这部分代码困住了。几乎,通过 IF 语句满足了要求(用户输入等于答案,我确信这一点)并且系统直接跳到 ELSE。我不确定我是否只是盲目,这是一个简单的格式问题,或者是否是我遗漏的其他内容。

while valid == False:
topic = input().lower()
if topic == "addition":
print ("You have selected Addition!")
valid = True

ARand1 = randrange(1, 200)
ARand2 = randrange(1, 200)
question_answer = ARand1 + ARand2

print ("Question",questions_asked,":")
print ("What is",ARand1,"+",ARand2,"?")

users_answer = input("Please input your answer")

if users_answer == (question_answer):
print ("Correct!")
total_score += 1
questions_asked += 1

else:
print ("Incorrect!")
questions_asked += 1
print (questions_asked)


elif topic == "subtraction":
print ('You have selected Subtraction!')
valid = True

SRand1 = randrange(100, 200)
SRand2 = randrange(1, 100)
answer = SRand1 - SRand2

print ("Question",questions_asked,":")
print ("What is",SRand1,"-",SRand2,"?")

我遇到的问题是第二个 if 语句(if users_answer == (question_answer):)。即使满足条件,它也完全跳过 IF 并直接进入 ELSE。

如果事情很简单或者写得不好,我深表歉意,我几周前才刚刚接触到 Python。

最佳答案

users_answer = input("请输入您的答案") 更改为 users_answer = raw_input("请输入您的答案")如果答案是 int,则将其解析为 int(raw_input("请输入您的答案"))

引用这个答案hereinput() :解释并计算输入,这意味着如果用户输入整数,将返回整数,如果用户输入字符串,则返回字符串。

raw_input():raw_input() 准确获取用户输入的内容并将其作为字符串传回。它不会解释用户输入。即使输入整数值 10 或输入列表,其类型也将是字符串仅。

关于python - IF 语句直接跳到 ELSE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45496951/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com