Python sys.exit() 方法用于终止程序的执行。它可选地接受一个整数或字符串作为参数,用作退出状态。按照惯例,参数 0 表示成功终止,而任何非零值都表示错误。
如果 sys.exit() 方法使用字符串调用,则在退出之前将字符串打印到 'stderr'。在内部,它会引发一个 SystemExit 异常,可以捕获该异常以防止程序退出。此方法通常用于由于错误或特定条件而提前退出脚本。
语法
以下是 Python sys.exit() 方法的语法和参数 -
sys.exit([arg])
参数
此方法接受表示退出状态的单个可选参数 arg。
返回值
此方法不返回任何值。
示例 1
以下是 sys.exit() 方法的示例,该方法在编译并使用一些正则表达式后清除缓存 -
import sys
print("This message will be printed.")
sys.exit(0)
print("This message will not be printed.")
输出
This message will be printed.
示例 2
此示例退出程序,状态为 1 表示错误。第二个 print 语句将不会被执行 -
import sys
print("An error occurred.")
sys.exit(1)
print("This message will not be printed.") # This line will not be executed.
输出
An error occurred.
示例 3
在此示例中,我们检查命令行参数。如果未提供任何参数,它将退出程序并显示一条消息。该消息将被打印到 stderr −
import sys
if len(sys.argv) < 2:
sys.exit("No arguments provided. Exiting the program.")
print("Arguments provided. Continuing the program.")
输出
No arguments provided. Exiting the program.
示例 4
此示例提示用户输入正数。如果输入负数,则会引发 ValueError 并退出程序并显示错误消息 -
import sys
try:
x = int(input("Enter a positive number: "))
if x < 0:
raise ValueError("Negative number entered.")
except ValueError as e:
sys.exit(f"Error: {e}")
print("You entered a positive number.")
输出
Enter a positive number: -1
Error: Negative number entered.
Error: Negative number entered.