python里有没有“穿越函数”这种东西
自学小白,不知道怎么描述这个功能。大概就是想要实现def f_1():
.....
if....:#比如满足某个条件时,触发f_2()改变f_1()里的参数。
f_2()
#然后f_2()执行完成之后,这里用一个函数回到f_1()开头,重新执行f_1()
大概就是想实现这样一个功能,求助各位大佬有没有这种函数吖 生成器的.send方法不知道能不能符合你的需求
{:10_277:} 递归有点符合,单递归都是同一个函数。
看你的需求,应该不用“穿越”。
你的需求具体是啥? 本帖最后由 傻眼貓咪 于 2021-10-23 15:08 编辑
不明白你想要的,希望我的代码对你有帮助:def A(num):
if num > 5:
def B():
nonlocal num
num = 5
B()
A(num)
else:
print(num)
A(123456)5 本帖最后由 jackz007 于 2021-10-23 15:53 编辑
穿越不了,只能 "好进好出,有始有终"
def f1(n):
while True:
print('n = ' , n)
if n :
n -= 1
f2(n)
else:
break
def f2(n):
print('f2()')
f1(10) 没有。
你想实现的目标有肯定有更好的实现逻辑,很多新手都是上来就问能不能让代码怎么样运行,殊不知他想实现的结果几行代码就搞定了。所以说你问更原始的目标可能有更多答案。 傻眼貓咪 发表于 2021-10-23 15:04
不明白你想要的,希望我的代码对你有帮助:
差不多是这个意思,我明天试试这个思路
页:
[1]