2011-01-21 39 views
0

我是新来的蟒蛇,面临以下的问题返回后..我试图做一个递归求和函数,但金额没有得到返回上一个新行的Python:添加新的生产线在递归函数

对于例如,SUM(2,2)应该返回

​​3210

和(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”,但它不工作

回答

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

正常工作在这里。

+0

哦好像一切又恢复了..我不知道是否有什么问题我的编译器..感谢反正 – JustToHelp

+0

@JustToHelp,应该涉及到具体的执行环境(如空闲,IPython中,或任何类型的shell环境)。编译器本身应该没问题。 –

0

您之前写过将“”更改为“\ n”不起作用,但您是否尝试打印结果?

print sum(2, 2)