def move(n, a, b, c):
if n==1:
print a,'-->',c
return#这个return为什么加这里??不符合函数return的规则啊
move(n-1,a,c,b)
print a,'-->',c
move(n-1,b,a,c)
move(4, 'A', 'B', 'C')
1 回答
已采纳
八神花露水
TA贡献35条经验 获得超103个赞
这里的return的作用是结束递归调用。return 的作用除了返回值,还可以终止函数执行。
当然,你也可以写成这种形式,作用是一样的。
def move(n, a, b, c): if n==1: print a,'-->',c else: move(n-1,a,c,b) print a,'-->',c move(n-1,b,a,c)
只不过当逻辑比较复杂时,if else 的嵌套会很深,这时用return直接终止函数,就不用进行额外的判断了。
添加回答
举报
0/150
提交
取消