条件が満たされた場合に実行を停止したい単純な Python スクリプトがあります。
例えば:
done = True
if done:
# quit/stop/exit
else:
# do other stuff
基本的に、コードの流れが関数を終了し、残りのコードを実行しないようにする関数の本体の「return」キーワードと同等に動作するものを探しています。
使用できるスクリプトを終了するには、
import sys
sys.exit()
終了ステータス値 (通常は整数) を指定することもできます。
import sys
sys.exit(0)
通常、成功と解釈されるゼロで終了します。通常、ゼロ以外のコードはエラーとして扱われます。デフォルトでは、ゼロで終了します。
import sys
sys.exit("aa! errors!")
「aa! エラー!」を出力します。ステータスコード 1 で終了します。
os モジュールには _exit() 関数もあります。sys.exit ()関数は SystemExit 例外を発生させてプログラムを終了するため、try ステートメントとクリーンアップ コードを実行できます。os._exit() バージョンはこれを行いません。クリーンアップや出力バッファのフラッシュを行わずにプログラムを終了するだけなので、通常は使用しないでください。
Python docsは、os._exit() が os.fork() の呼び出しで作成された子プロセスを終了する通常の方法であることを示しているため、特定の状況で使用されます。
スクリプトの本体を関数に入れ、その関数から戻ることができます。
def main():
done = True
if done:
return
# quit/stop/exit
else:
# do other stuff
if __name__ == "__main__":
#Run as main program
main()
次のいずれかを使用できます。
import sys
sys.exit(...)
また:
raise SystemExit(...)
オプションのパラメーターは、終了コードまたはエラー・メッセージにすることができます。どちらの方法も同じです。以前はsys.exitを好みましたが、最近はSystemExitを上げるように切り替えました。これは、残りのコードの中で(raiseキーワードのために)目立つように見えるためです。
import sys
sys.exit()
試す
sys.exit("message")
パールみたいだな
die("message")
これがあなたが探しているものなら。インポートされたモジュールから呼び出されても、スクリプトの実行を終了します / def /function
exit() はトリックを行う必要があります
exit() で実行する必要があります。
プログラム全体を停止する必要がある場合は、sys.exit() を使用してください。それ以外の場合は、空の return を使用してください。