Python 再次播放功能在程序中不工作
我写了一个初学者程序来玩游戏。程序的主结构将各种函数嵌套在外部父函数中。关于从Python 再次播放功能在程序中不工作,python,function,recursion,Python,Function,Recursion,我写了一个初学者程序来玩游戏。程序的主结构将各种函数嵌套在外部父函数中。关于从fnested()内部调用fparent(),我有一个问题 注:遗憾的是,我无法共享原始代码,因为这是针对大学的,并且由于学术诚信政策,我无法公开代码 该实现背后的思想是,如果用户想要重复该程序,他们应该输入一个有效的指示符,YES。这在嵌套函数中发生。程序试图识别此输入,因此再次调用fparent(),重新启动程序 这目前不起作用 我想知道是否有一种方法来编码这个特性 链接到现有的答案是最受欢迎的,因为我找不到任
fnested()
内部调用fparent()
,我有一个问题
注:遗憾的是,我无法共享原始代码,因为这是针对大学的,并且由于学术诚信政策,我无法公开代码
该实现背后的思想是,如果用户想要重复该程序,他们应该输入一个有效的指示符,YES
。这在嵌套函数中发生。程序试图识别此输入,因此再次调用fparent()
,重新启动程序
这目前不起作用
- 我想知道是否有一种方法来编码这个特性
链接到现有的答案是最受欢迎的,因为我找不到任何可以直接帮助我的东西 如果您试图直接从嵌套调用父函数,它将为您提供“堆栈溢出”达到的最大深度 正如你所说的问题: 他们应该输入一个有效的指标,是的。这在一个小时内发生 嵌套函数。该计划试图识别这种输入,从而 再次调用fparent(),重新启动程序 您可以尝试以下方法:
def f0():
def f1():
print("do some stuff in function f1")
def f2():
print("do some stuff in function f2")
def f3():
print("do some stuff with function f3")
user_input=str(input("Do you want to repeat the program Yes or No >> "))
map_userinput={"Yes":f0,"Level2":f2,"Level3":f3}
if user_input=="Yes":
print("ok calling the parent function from nested function")
map_userinput[user_input]()
elif user_input=="Level2":
map_userinput[user_input]()
else:
print("continue with this nested function")
f0()
抱歉,您的修订代码没有任何意义。如果True为false,
如何触发else?如果函数没有正确的返回
,您将得到堆栈溢出致命错误。如果您不询问您当前的代码,那就更好了。询问你想完成的任务。我们将帮助您编写代码。