这个Easy Python代码不起作用,我缺少哪里

时间:2017-09-17 13:18:35

标签: python-3.x

我甚至首先将值分配给n

n=10
def countdown(n):
 if n <= 0:
  print('Blastoff!')
 else:
  print(n)
 countdown(n-1)

但是当我运行它时,它会显示:

output

我期待看到这样的事情:

3
2
1
Blastoff!

1 个答案:

答案 0 :(得分:4)

我相信你打算做以下事情:

n=10
def countdown(n):
   if n <= 0:
      print('Blastoff!')
      return
   else:
      print(n)
      countdown(n-1)

countdown(n)

在递归中,您需要有一个语句来终止递归,否则它将在不停止的情况下运行。

当您到达停靠点(n <= 0)时,您需要从该功能返回。