我已尝试过使用return
到sys.exit
到SystemExit
的所有内容,但它无法正常使用。
我有一个main
函数,它运行第一个函数;在第一个函数结束时它运行第二个函数;在第二个函数结束时它运行第三个函数;之后它询问我是否要再次运行程序或退出。无论选择什么,它总是让我回到main
。
有没有办法强制关闭函数内函数内的函数?
编辑: 例如:
def main(RPNlist):
some code here
#this function converts a .txt file to a list, wich is a math operation
y=list
print(list)
return(func2(y))
def func2(y):
some code here
#this function converts the operation to reverse polish notation
z=RPNlist
print(RPNlist)
return(function3(RPNlist))
def func3(RPNlist):
some code here
# this solves the RPN operation
a=answer
print(a)
choice=input("do you want to exit?(Input y to continue or n to exit): ")
if choice=="y":
return(main(x))
elif choice=="n":
#here's the part where I need to exit
#I think this may be the issue, but is the only way I found for the whole program to run
global RPNlist
RPNlist=[]
main(RPNlist)
答案 0 :(得分:0)
它真的取决于您的代码。
return value
它会一直退出你的功能。问题不在这里。也许没有调用回报(如果它在if中)。也许你有一个循环,在这种情况下,使用break来退出循环。让应用程序自行关闭。当没有剩余方法调用时,应用程序将自行退出。刚离开循环。如果它是一个无限循环,你也可以为循环设置一个条件,在其中放置一个布尔值然后将布尔值设置为false。
如果没有您的代码,很难提供帮助,如果您想要更好的答案,则需要显示您的代码。