def hanoi(n,x,y,z): # 共有n个盘子,从x挪到z上,一次只能挪动一个盘子
if n == 1:
print(x,'->',z)
else:
hanoi(n - 1,x,z,y) # 将前n - 1个盘子从x移动到y
print(x,'->',z) # 将最底下的最后一个盘子从x移动到z
hanoi(n - 1,y,x,z) # 将y上的n - 1个盘子移动到z上
res = int(input('请输入汉诺塔的层数:').strip())
hanoi(res,'X','Y','Z')
转载于:https://www.cnblogs.com/laosun0204/p/8795162.html