Python - 文法 - 終了(exit)


 クラウディア


1. 概要
2. exit
3. sys.exit
4. os._exit

1. 概要

 「C言語」で終了する場合は、基本は、「exit」という、ランタイムライブラリをコールすることになります。  「Python」の場合、主要な「exit」が3種類あるらしく・・・。  本ページは、下記のサイトを参考にさせていただきました。
[解決!Python]プログラムを終了する3つの exit 関数の違いまとめ:解決!Python

2. exit

 上に何もつかない「exit」は、「python」を対話型で起動しているときに、プログラムを終了させるのに使うのだそうです。  あまり、使いたくないかな・・・。

3. sys.exit


import sys

sys.exit()
 「SystemExit」という例外を発生させるそうです。
Python 処理系は SystemExit 例外を受け取ると、クリーンアップ処理(atexit モジュールを使って登録された終了ハンドラーなど)を実行した後にプログラムを終了させる。
 だそうです。  めったに使わなかったり、デバッグ時に使用して、すぐコメントアウトするのであれば、「import」と「sys.exit()」を別の行に書くと、ソース編集が手間なので。

import sys; sys.exit()
 と、1行で書いちゃうのが楽ちん。

4. os._exit


import os

os._exit(0)
os._exit関数は引数に指定した終了ステータス(省略不可)でプログラムを終了させる。sys.exit関数とは異なり、クリーンアップ処理は行われない。
 だそうです。  わたしの場合、「exit」は、例外が発生した挙句に、終了させるときに使うし、特にクリーンアップすることもないので、これが一番使い勝手がよさそうです。