vs code调试输出无厘头?

为什么使用vsCode调试输出时,输出的内容是无厘头的?还是我做错了什么?

源代码:

def fn(k):
    if(k > 0):
        res = k + fn(k-1)
        print(res)
    else:
        res = 0
    return res

fn(5)

输入内容:

1
1
1
1
3
1
1
3
1
3
6
……

图片描述

阅读 2.8k
3 个回答

安装Visual Studio集成开发环境后就好了,可能是缺少什么必要的组件吧。

代码没有问题,我自己运行了一下,结果是对的。看是不是vs的特殊设置之类的。

另外,提醒一点,if语句的表达式是不需要加括号的。

if k > 0:
    res = k + fn(k-1)

在ipython3上运行结果如下:

1
3
6
10
15
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题