Python の終了コマンド

Muhammad Maisam Abbas 2023年10月10日
  1. Python の quit() 関数でプログラムを終了する
  2. Python の exit() 関数を使用してプログラムを終了する
  3. Python の sys.exit() 関数を使用してプログラムを終了する
  4. Python の os._exit() 関数を使用してプログラムを終了する
Python の終了コマンド

このチュートリアルでは、Python でプログラムを終了する方法について説明します。

Python の quit() 関数でプログラムを終了する

Python でプログラムを実行するたびに、site モジュールが自動的にメモリにロードされます。この site モジュールには quit() 関数が含まれており、インタプリタ内でプログラムを終了するために使用できます。quit() 関数を実行すると、SystemExit 例外が発生します。したがって、このプロセスはプログラムを終了します。

次のコードは、quit() 関数を使用してプログラムを終了する方法を示しています。

print("exiting the program")
print(quit())

出力:

exiting the program

上記のコードの quit() 関数を使用してプログラムを終了しました。quit() 関数は、対話型インタープリターで動作するように設計されており、プロダクションコードでは使用しないでください。quit() 関数は site モジュールに依存することに注意してください。

Python の exit() 関数を使用してプログラムを終了する

exit() 関数は、Python の site モジュールにも含まれています。この関数は、quit() 関数と同じことを行います。これらの関数は両方とも、Python をよりユーザーフレンドリーにするために追加されました。exit() 関数は、実行時に SystemExit 例外も発生させます。

次のプログラムは、exit() 関数を使用してプログラムを終了する方法を示しています。

print("exiting the program")
print(exit())

出力:

exiting the program

上記のコードの exit() 関数を使用してプログラムを終了しました。ただし、exit() 関数も対話型インタープリターで動作するように設計されているため、プロダクションコードでも使用しないでください。その理由は、exit() 関数も site モジュールに依存しているためです。

Python の sys.exit() 関数を使用してプログラムを終了する

sys.exit() 関数も、Python の sys モジュールに含まれているため、前の関数と同じ仕事をします。sys.exit() は、実行時に SystemExit 例外も発生させます。ただし、前の 2つのメソッドとは異なり、このメソッドは本番コードで使用することを目的としています。

この方法は site モジュールに依存せず、sys モジュールは常に本番コードで使用できます。以下のプログラムは、sys.exit() 関数を使用してプログラムを終了する方法を示しています。

import sys

print("exiting the program")
print(sys.exit())

出力:

exiting the program

上記のコードの sys.exit() 関数を使用してプログラムを終了しました。このアプローチを機能させるには、sys モジュールをプログラムにインポートする必要があります。

Python の os._exit() 関数を使用してプログラムを終了する

この関数は、Python の os モジュール内に含まれています。os._exit() 関数は、クリーンアップハンドラーを呼び出したり、stdio バッファーをフラッシュしたりせずにプロセスを終了します。このプロセスは、プログラムを終了するための非常に優雅な方法を提供しませんが、機能します。

理想的には、このメソッドは、子殺しプロセスなどの特別なシナリオ用に予約する必要があります。この関数は site モジュールに依存しないため、プロダクションコード内で使用することもできます。また、プロダクションコードでは常に os モジュールを使用できます。

次のコードスニペットは、os._exit() 関数を使用してプログラムを終了する方法を示しています。

import os

print("exiting the program")
print(os._exit(0))

出力:

exiting the program

上記のコードの os._exit() 関数を使用してプログラムを終了しました。このメソッドを機能させるには、コード内に os モジュールをインポートし、os._exit() 関数内に終了コードを指定する必要があります。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn