由于step是全局变量,step一直累加。。有没有什么办法在函数调用完后清除呢。。
# -*- coding : utf-8 -*- step = 1 def move(n,a,c): global step print('第%d步,将%d号盘子由%s移动到%s' % (step,n,a,c)) step += 1 def hanoi(n,a,b,c): if n == 1: move(1,a,c) else: hanoi(n-1,a,c,b)#将初始A的前n-1个盘子移动到借用塔B上 move(n,a,c)#将初始A上最后一个盘子移动到最终塔C上 hanoi(n-1,b,a,c)#将借用塔B,n-1个盘子移动到最终塔C上
运行结果ok的。
Sign in to make a reply
一路微笑的漫天繁星
由于step是全局变量,step一直累加。。有没有什么办法在函数调用完后清除呢。。
运行结果ok的。