检查python函数返回的退出代码

时间:2015-02-20 05:21:19

标签: python-2.7 windows-shell

我写了一个python函数

def foo():
    if A:
        do something
    if B:
        exit(-1)

if __name__ == "__main__":
    foo()

有没有办法检查foo函数返回的退出代码?我从windows shell运行它。

1 个答案:

答案 0 :(得分:1)

要检查退出代码,请查看变量$?(在sh / bash / csh / etc中)。假设您的脚本位于文件foo.py中。

$ ./foo.py
$ echo $?  # Prints 0 on success, -1 on failure.

这不是特定于python,BTW。对于返回退出代码的所有程序都是如此。


退出代码不是来自foo函数,而是来自sys.exit()函数。如果程序由于异常而退出,则它具有退出代码1.如果您将数字传递给sys.exit(),它将退出该退出代码。否则,它有退出代码0。


对于Windows shell,请查看以下答案:How do I get the application exit code from a Windows command line?