所以我想为作业创建一个测验,但我厌倦了在每个问题之后写 if 和 else 看看它是否正确,所以我决定尝试制作一个函数。
问题是 if 语句不能进入函数内部,因为它需要检查用户的回答。 我尝试做的事情看起来像
def result():
print("Correct")
else:
print("Wrong")
我想在 if 语句之后插入该函数,但每当我尝试运行它时,我都会收到语法错误,因为在函数中的 else 之前没有 if 语句。
有什么办法可以解决这个问题吗?
请您参考如下方法:
听起来你一遍又一遍地写这样的东西:
if ask_question():
print("Correct")
else:
print("Wrong")
您确实可以将这种重复的逻辑移动到一个函数中!这是编程的核心前提。但是函数(一般来说)是孤立的工作单元,因为它们在一个地方定义,然后在其他地方调用。因此,正如您发现的那样,您不能在 if 语句中途定义函数。
然而,您可以做的是将整个 if 语句移动到您的函数中!考虑:
def print_result(result):
if result:
print("Correct")
else:
print("Wrong")
您可以将 True 或 False 值传递给哪个来触发不同的路径,例如print_result(True) 和 print_result(False)。
也许你可以想出从这里去哪里:)
