sys.exit(0)和os._exit(0)有什么区别

时间:2012-03-06 20:29:59

标签: python

请帮助我根据功能的不同来澄清这两个python语句的概念:

  1. sys.exit(0)

  2. os._exit(0)

2 个答案:

答案 0 :(得分:57)

根据documentation

os._exit():
     

退出状态为n的进程,不调用清理处理程序,刷新stdio缓冲区等。

     

注意退出的标准方式是sys.exit(n)_exit()通常只应在fork()之后的子进程中使用。

答案 1 :(得分:23)

os._exit调用C函数_exit()执行即时程序 终止。请注意声明“永远不会返回”。

sys.exit()raise SystemExit()相同。它提出了一个Python 可能被来电者抓住的异常。

原帖:http://bytes.com/topic/python/answers/156121-os-_exit-vs-sys-exit