如何在Python脚本中停止执行?

11

有不同的方法来终止Python脚本。你能发一些代码来给出一些上下文吗? - Mark Byers
3
你怎么会有5700的声望分却问出这个问题,到底是怎么回事? - John Kugelman
1
另一个重复的问题:https://dev59.com/qXVC5IYBdhLWcg3wz0h9 - Mark Byers
@John他有726个问题和4个答案--你不需要回答问题来积累声望。 - Michael Mrozek
@Mark 干得好,我投票关闭除了73663以外的所有问题。 - Michael Mrozek
3个回答

21

如果您有主函数,则可以在其中使用return,但如果在调用main函数后还有更多的代码,则不能保证退出脚本。

几乎总是有效的最简单的方法是使用sys.exit()

import sys
sys.exit()

其他可能性:

  • 抛出一个未被捕获的错误。
  • 让执行点到达脚本的末尾。
  • 如果您在除主线程外的其他线程中,请使用thread.interrupt_main()

你只能在函数中使用 return,让执行点到达脚本末尾并不真正意义上的“停止执行”。 - Michael Mrozek
1
@Michael Mrozek:我不同意 - 到达脚本结尾是停止执行的一种方式。如果他只想打印“Hello world”,然后结束脚本,那么这实际上是停止执行的最pythonic的方法。 - Mark Byers

7

sys 模块中有一个 exit 函数(文档):

import sys
sys.exit( 0 ) # 0 will be passed to OS

您还可以:
raise SystemExit

或者任何其他不会被捕获的异常。

6

3
提到需要导入sys可能是个好主意。同时提及需要使用括号来调用函数也是个不错的建议。没有括号,函数将不会执行任何操作。 - Mark Byers
+1 阅读 @Mark 的评论;有点懒得编辑我的帖子。 - NullUserException

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接