我已经找到了解决方案,但找不到一个。我想做一个递归,但函数不能有一个返回语句。 这里是程序:Python递归(扩展)
n = input("Input a positive integer: ")
text = open("Nummbers.txt", "w")
text.write("Number inputed: " + str(n))
tree(n)
def tree(n):
if(n>0):
tree(n-1)
print(n)
text.write(str(n))
tree(n-1)
当我运行它,它给了我一个“没有定义错误的树”。树必须如上所述书写。我如何得到这个正常工作,我已经看到了将其设置为这样所有的递归的教程,我使用python 2.7
作为一个技术性,你的函数仍然有一个return语句,它只是隐含的,它返回None。尝试用'res = tree(n)替换'tree(n)';打印(res)'看我的意思。为什么你不能有一个明确的回报声明? –