gpt4 book ai didi

python-3.x - Python 中的 exit(0) 和 exit(True) 之间有区别吗?

转载 作者:行者123 更新时间:2023-12-04 19:57:07 26 4
gpt4 key购买 nike

我不喜欢使用整数并且不记得(即使是多年)它们的含义。所以我想有常数。

这两个调用有区别吗?

sys.exit(0)
sys.exit(True)

或者还有其他常数吗?

我的问题的背景是,我的脚本的调用者在两种情况下的行为不同。

最佳答案

来自 sys.exit() 的官方文档:

sys.exit([arg])

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

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

这里True对应于 1 .
正如文档中所说,退出代码可以是 0 到 127,您可以选择要分配的退出代码,但默认为 0 和 True将对应于 1 .

关于python-3.x - Python 中的 exit(0) 和 exit(True) 之间有区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31770180/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com