如何在python脚本结束之前停止它

时间:2014-03-05 21:55:44

标签: python

在主脚本中,我想在某些条件下阻止它。我试过return,但它错了,因为它在函数之外。我试过了exit,但它并没有停止。请参阅以下内容:

print 'step 1'
exit
print 'step 2'

我该怎么办? 我使用的版本是IDLE 2.7.5 +

3 个答案:

答案 0 :(得分:7)

使用exit()

from sys import exit
print 'step 1'
exit()
print 'step 2'

答案 1 :(得分:2)

如果您不在某个功能中,请使用sys.exit()

请注意,即使从较大程序中的模块调用,这也将完全退出python

通常会更好地从函数组织return,并尽可能多地保留代码内的代码。

答案 2 :(得分:1)

退出Python脚本的另一种方法是简单地使用SystemExit引发raise例外:

print 'step 1'
raise SystemExit
print 'step 2'

此解决方案与sys.exit完全相同,只是您不需要先导入sys


此外,您的具体问题是由于您实际上没有调用exit函数引起的:

print 'step 1'
exit() # Add () after exit to call the function
print 'step 2'

但是,您不应该使用此解决方案,因为它被认为是一种不好的做法。相反,您应该使用sys.exitraise,如上所示。