如何让'redo‘函数返回到多个不同函数的开头?我希望它返回起始函数的开头,但由于函数名的改变,重做函数将不会应用于除第一个函数之外的任何其他函数。如有任何帮助,我们将非常感谢!
下面是我想要做的例子:
function_1():
print('x')
redo()
function_2():
print('y')
redo()
def redo():
while True:
redo = input("Would you like to redo this section?\nEnter y/n: ")
while redo not in ('y', 'n'):
print("Please enter a valid input.\n")
if redo == 'y':
(original function its under)
elif redo == 'n':
break发布于 2021-03-26 06:36:56
函数不能直接更改其调用方的控制流,但它可以返回调用方可以用来修改自己的控制流的条件:
def function_1():
run = True
while run:
print('x')
run = redo()
def function_2():
run = True
while run:
print('y')
run = redo()
def redo():
while True:
redo = input("Would you like to redo this section?\nEnter y/n: ")
if redo == 'y':
return True
if redo == 'n':
return False
print("Please enter a valid input.")https://stackoverflow.com/questions/66808509
复制相似问题