擅长:python、mysql、java
<p>您正在尝试迭代和递归方法,但没有正确跟踪<code>choice</code>和<code>validchoice</code>变量。你知道吗</p>
<p>对于正确的递归方法,去掉<code>while</code>并添加<code>return</code>:</p>
<pre><code>def ValidateMenuChoice(choice):
Num = [1,2,3,4,5,6]
if choice not in Num:
print("Invalid choice, please try again.")
display = menu.Menu("Student")
display.printMenu()
choice = GetMenuChoice()
return ValidateMenuChoice(choice)
return choice
</code></pre>
<p>迭代方法如下所示:</p>
<pre><code>def ValidateMenuChoice(choice=None):
Num = [1,2,3,4,5,6]
while True:
if choice not in Num:
print("Invalid choice, please try again.")
display = menu.Menu("Student")
display.printMenu()
choice = GetMenuChoice()
else:
return choice
</code></pre>