sys.exit()
Pythonで例外を呼び出すこととスローすることの違いは何ですか?
次のことを行うPythonスクリプトがあるとしましょう。
- ファイルを開く
- 行を読む
- それを閉じる
ファイルが存在しないか、IOException
実行時にスローされる場合、以下のオプションのどれがより理にかなっていますか?
- 例外の例外/キャッチはありません。例外が発生した場合、失敗します(とにかく予想される動作です)
- 例外を除く/キャッチし、エラーメッセージをログに記録し、カスタマイズされた例外を自分でスローし、失敗します。
except IOException
ブロック内で、エラーメッセージを表示して終了します。sys.exit("something is wrong")
オプション3はプロセスを強制終了しますが、1と2は強制終了しませんか?PythonにJavaのようなチェックされた例外がない場合(私は実際にはJava開発者です^ _ ^)、Python例外を処理するための最良の方法は何ですか?