vs code调试输出无厘头?

已注销
  • 406

为什么使用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
……

图片描述

回复
阅读 1.6k
3 个回答

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

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

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

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

在ipython3上运行结果如下:

1
3
6
10
15
宣传栏