一尘不染

终止Python脚本

python

我知道die()PHP中的命令会尽早停止脚本。

如何在Python中执行此操作?


阅读 646

收藏
2020-02-16

共1个答案

一尘不染

import sys
sys.exit()

sys模块文档中的详细信息:

sys.exit([arg])

从Python退出。这是通过引发SystemExit异常来实现的,因此可以执行 try语句的finally子句指定的清除操作,并且有可能在外部级别拦截出口尝试。

可选参数arg可以是给出退出状态的整数(默认为零),也可以是其他类型的对象。如果它是整数,则shell等将零视为“成功终止”,而将任何非零值视为“异常终止”。大多数系统要求它的范围是0-127,否则会产生不确定的结果。某些系统具有为特定的退出代码分配特定含义的约定,但是这些通常尚不完善。Unix程序通常将2用于命令行语法错误,将1用于所有其他类型的错误。如果传递了另一种类型的对象,则“无”等效于传递零,并且将任何其他对象打印到stderr并导致退出代码为1。特别是, sys.exit("some error message") 是发生错误时退出程序的快速方法。

由于exit()最终“仅”会引发异常,因此它仅在从主线程调用时才退出进程,并且不会拦截该异常。

请注意,这是退出的“不错”方式。@ glyphtwistedmatrix低于指出,如果你想要一个“硬退出”,你可以使用os._exit(错误代码),但它很可能与操作系统相关的在一定程度上(也许它不会在Windows下一个错误代码,例如),它肯定不是那么友好,因为它不允许解释器在过程终止之前进行任何清理。

2020-02-16