|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 冬雪雪冬 于 2016-2-5 17:24 编辑
在小甲鱼“零基础入门学习python”视频教程课后习题第24课递归:汉诺塔实现教学视频中:
def hanoi(n,x,y,z):
if n ==1:
print(x,'-->',z)
else:
hanoi(n-1,x,z,y)
#将前n-1个盘子从x移动到y上
print(x,'-->',z) #将最底下的最后一个盘子从x移动到z上
#将y上的n-1个盘子移动到z上
hanoi(n-1,y,x,z)
n = int(input('请输入汉诺塔的层数:'))
hanoi(n,'X','Y','Z')
运行能够正确输出结果
但是若将最后一行改写为:hanoi(n,x,y,z)
结果却报错,为:
Traceback (most recent call last):
File "G:/Python/CodePractice/24.py", line 13, in <module>
hanoi(n,x,y,z)
NameError: name 'x' is not defined
请问为什么? |
|