我正在尝试将True从isCorrect方法返回到correctMessage方法。但由于输出不正确,correctMessage无法正常运行 “函数在0x000000处正确”
def correctMessage(isCorrect, tryAnswer, questionAnswer):
if isCorrect is True:
return print("Yes! You answered \"",
str(tryAnswer), "\" and the answer was " + questionAnswer)
def isCorrect(tryAnswer, questionAnswer):
if str(tryAnswer).lower() == questionAnswer:
return True
return False
我该怎么做才能正确评估
您没有调用
isCorrect
,而是测试函数本身是否是True
。添加paren并传递isCorrect
所需的两个参数旁注:在
isCorrect
中不需要有两个返回的if
return str(tryAnswer).lower() == questionAnswer
会更快地完成同样的事情类似地,测试
if x is True:
是丑陋的,而且几乎总是错误的,只要测试if x:
,除非值True
是非常重要的,并且与所有其他真实值不同(在这种情况下,它是唯一真实的可能性,所以只做if isCorrect(...):
会更快、更像Python)您需要使用希望传递给isCorrect的参数调用isCorrect。 您当前正在检查物理函数isCorrect是否等于True—事实并非如此
相关问题 更多 >
编程相关推荐