Python:递归函数返回后添加新行

0 投票
2 回答
5160 浏览
提问于 2025-04-16 10:21

我刚接触Python,遇到了一个问题。我想写一个递归求和的函数,但结果却没有在新的一行显示。

比如,调用sum(2,2)应该返回

4
2

而sum(2,3)会返回

6
4
2

但是我得到的结果是4 2和6 4 2,都是在同一行上。这是我的代码:

def sum(a,b):
    if a>0 and b>0:
        return str(a*b) + " " + str(sum(a,b-1))
    else:
        return ""

我尝试把" "换成"\n",但没有效果。

2 个回答

0

你说把“ ”换成“\n”不管用,但你试过打印结果吗?

print sum(2, 2)
1
def sum(a,b):
    if a>0 and b>0:
        return str(a*b) + "\n" + str(sum(a,b-1))
    else:
        return ""

这里运行得很好。

撰写回答