Python中的exit(0)和exit(1)有什么区别?

我试着四处寻找,但在这几行中没有找到一个具体的问题。如果它已经被回答了,一个链接就足够了。


当前回答

0和1是退出码。

Exit(0)表示没有任何错误/问题的干净退出

Exit(1)表示存在一些问题/错误/问题,这就是程序退出的原因。

这不是Python特有的,而且很常见。非零退出代码被视为异常退出,有时,错误代码指示出问题所在。零错误代码意味着成功退出。

这对于其他程序、shell、调用者等很有用,可以了解您的程序发生了什么并进行相应的处理。

其他回答

所有C程序(包括Python)的标准约定是exit(0)表示成功,exit(1)或任何其他非零值(范围1..255)表示失败。任何超出0..范围的值。255对256取模处理(退出状态存储在8位值中)。有时,它将被视为有符号的(因此您可能会看到-128,-127等),但更多情况下它被视为无符号的。

此状态可用于调用Python的代码。这个约定适用于各个平台,不过非零退出状态的含义在不同的平台上可能有所不同。

传递给exit()函数的数字只是程序的返回码,返回码是给操作系统的。从程序的角度来看,两者没有区别:在这两种情况下,执行都将结束,提供给函数的值将被传递给操作系统。但是一些工具和脚本会考虑程序的退出码。大多数工具在成功时返回0,非0表示错误。

因此,如果您的程序将从脚本、自动化工具或其他考虑返回代码的软件(如IDE)运行,则必须小心返回的内容。

如果有疑问,只需返回0表示一切正常。

0和1是退出码。

Exit(0)表示没有任何错误/问题的干净退出

Exit(1)表示存在一些问题/错误/问题,这就是程序退出的原因。

这不是Python特有的,而且很常见。非零退出代码被视为异常退出,有时,错误代码指示出问题所在。零错误代码意味着成功退出。

这对于其他程序、shell、调用者等很有用,可以了解您的程序发生了什么并进行相应的处理。

这决定了程序在完成运行时的退出状态(通常,0表示成功,1表示错误)。

它并不是Python独有的,确切的效果取决于你的操作系统和程序的调用方式(尽管在99%的情况下,如果你只是运行Python脚本,这并不重要)。

exit(0):这将导致程序成功终止退出。

exit(1):这将导致程序以特定于系统的含义退出。

在许多系统上,exit(1)表示某种类型的失败 不能保证。

我记得,C标准只识别三个标准出口 价值观:

EXIT_SUCCESS——成功终止 EXIT_FAILURE——终止失败 0——与EXIT_SUCCESS相同