Python の exit と sys.exit と os._exit の違いって?
Python で 終了させるときexit関数を使おうとしたところ、exit() と sys.exit() と os._exit() の3つあることに気づいた。
これの使い分けって何だろう?と思い調べた。
exit() について
exit()はコマンドプロンプトでインタプリタにPythonを使うときに使うexit関数と覚えておけばよい。
sys.exit() について
いわゆるアプリケーション(スクリプト)内で使うのがsys.exit()。メインプロセスを殺すことができる。
まぁ正直 exit() 呼んでも結果は同じなのだけど、このsys.exit()は引数で終了ステータスを設定できる点が異なる。
os._exit() について
これはforkでプロセスを作ったときにそのプロセスを殺すときに使うやつ。 言い換えるとforkしないなら使わない。
まぁあんま考えずに、初心者はsys.exit()しとけば文句言われない。
(forkしてマルチプロセスプログラミングする中級者以上の人は os._exit() しなきゃいけないことぐらいわかってるので)
以上です。