当其他python脚本退出时如何停止退出python脚本?

时间:2013-08-14 17:38:02

标签: python exit

我是python语言的新手。我的问题是我有两个python脚本:自动化脚本A和主脚本B.脚本A内部调用脚本B.只要使用sys.exit(1)功能捕获异常,脚本B就会退出。现在,只要脚本B退出,它也会导致脚本A的退出。有没有办法停止退出脚本A并继续其余的执行,即使脚本B退出。

提前致谢。

2 个答案:

答案 0 :(得分:2)

您应该将代码封装在try except块中。这将捕获您的异常,并继续执行脚本A.

答案 1 :(得分:1)

sys.exit()实际上引发了一个SystemExit异常,它由Python解释器捕获并处理。您所要做的就是将调用“脚本B”放入一个try / except块中,该块在它一直冒泡之前捕获SystemExit。例如:

try:
    script_b.do_stuff()
except SystemExit as e:
    print('Script B exited with return code {0}'.format(e.code))