退出Python函数调用

时间:2011-09-10 18:48:06

标签: python if-statement exit

我的程序如何退出函数调用?我有一个递归函数,当条件满足时,调用自身。

def function( arg ):
    if (condition):
        ...
        return function( arg + 1 )

我猜它是如何工作的:如果不满足条件,函数调用将终止。在我的程序中,情况似乎并非如此 - 条件被违反但程序跳转到return语句(可能是它看到的唯一return语句?)。

我可以在else子句中放入某种exit()吗?

3 个答案:

答案 0 :(得分:3)

如上所列,您的代码将始终返回None。它遍历所有递归,直到条件不满足为止,然后退出函数的末尾并返回None

例如,试试这个:

def f(x):
    if (x<10):
        return f(x+1)
return x

并从中积累起来做一些有用的事情。

答案 1 :(得分:0)

如果Python函数没有明确return一个值,则返回None。隐式return None与C语言中的return类似。

答案 2 :(得分:0)

“函数终止”会导致它返回None。如果你看到不同的东西,它很可能会击中你看到的return,因为它可能是错误的缩进。使用python -tt myscript.py验证您没有混合制表符和空格。