exit():结束整个程序的运行
sys.exit(n):
退出程序引发SystemExit异常,可以捕获异常执行些清理工作。n默认值为0,表示正常退出,其他都是非正常退出,常用于在主线程中退出。
os._exit(n):
直接退出, 不抛异常, 不执行相关清理工作,剩余段语句不会被执行。常用在子进程的退出。
exit()/quit():
抛出SystemExit异常。一般在交互式shell中退出时使用。
exit(0)和exit(1)的区别:
在很多类型的操作系统里,exit(0) 可以中断某个程序,而其中的数字参数则用来表示程序是否是碰到错误而中断。exit(1) 表示发生了错误进行退出,而 exit(0) 则表示程序是正常退出的,退出代码是告诉解释器的(或操作系统)。这和我们学的布尔逻辑 0==False 正好相反,不过你可以用不一样的数字表示不同的错误结果。比如你可以用exit(3) 来表示另一种和 exit(2)或 exit(1) 不同。
最后强调一下,exit()和break可不一样哈,exit()是直接结束程序,而break是直接跳出循环,不一样。