我希望将用户输入等同于答案并根据用户输入进行打印

时间:2016-04-09 14:52:13

标签: python python-3.x random

我正在创建一个创建随机问题的数学测试程序,我要求用户输入答案,并使用正确的答案检查答案并给出输出。

id = (bar["id"] as? Int)!
name = (bar["name"] as? String)!
adress = (bar["address"] as? String)!
url = (bar["url"] as? String)!
image_url = (bar["image_url"] as? String)!

tags = (bar["tags"] as? Bool)!

latitude = (bar["latitude"] as? Double)!
longitude = (bar["longitude"] as? Double)!

这是我不完整的代码。问题是即使有添加标记的问题并且用户输入正确的答案,程序仍然打印错误的输出(如果用户输入错误的答案应该打印的输出)请,任何帮助将不胜感激。提前谢谢。

1 个答案:

答案 0 :(得分:1)

只需更改此行:

answer = input("\n Enter answer")

对此:

answer = int(input("\n Enter answer"))

原因是您比较strint

例如

如果是num1 = 5num2 = 5

  • correct将等于5+510

  • 但是,answer将等于字符串"10"

因此,当您去测试correctanswer之间的平等时,您正在比较"10" == 10当然是False。因此,您需要将字符串answer类型转换为int,因为input始终返回一个字符串。这导致10==10 True