Pythonのsys
モジュールとは?
📝 はじめに
Pythonのsys
モジュールは、システム(環境)に関する情報を取得・操作するための標準ライブラリ です。
特に 「コマンドライン(ターミナルで命令するコマンドのこと)引数の処理」 でよく使われます。
この記事では、
-
sys
モジュールの基本的な使い方 -
sys.argv
を使ったコマンドライン引数の処理 -
sys.exit()
を使ったプログラムの終了方法
について解説します。
sys
モジュールとは?
Pythonには 「標準ライブラリ」 という組み込みの機能があり、その一つが sys
モジュールです。
今回私がプログラミングの制作課題時に使用したsys
モジュールの使い方について解説します。
✅ sys
モジュールの基本的な使い方
まずは sys
モジュールを使うには、Pythonに組み込み済みなので import sys
を書くだけで使えます。
import sys # sysモジュールをインポート
この sys
モジュールには、
- コマンドライン引数を取得する (
sys.argv
) - プログラムを終了する (
sys.exit()
) - Pythonのバージョン情報を取得する (
sys.version
) - Pythonの実行環境のパス情報を取得する (
sys.path
)
といった便利な機能が含まれています。
sys.argv
とは?(コマンドライン引数の取得)
💡 sys.argv
の基本
sys.argv
を使うと、Pythonスクリプトを実行するときに渡されたコマンドライン引数 を取得できます。
import sys
print(sys.argv) # コマンドライン引数をリストとして出力
✅ 実行例
$ python script.py hello world
🔹 出力結果
['script.py', 'hello', 'world']
-
sys.argv[0]
→ スクリプト名 (script.py
) -
sys.argv[1]
→ 最初の引数 (hello
) -
sys.argv[2]
→ 次の引数 (world
)
📌 ポイント
-
sys.argv
は リスト型 なので、sys.argv[1]
のようにアクセスできます。 -
引数がない場合は
sys.argv
の長さ(len)が1
になる(スクリプト名だけ)。
sys.exit()
でプログラムを終了する
sys.exit()
を使うと、プログラムを途中で終了 できます。
import sys
print("プログラムを開始します")
sys.exit(0) # 正常終了(0を指定)
print("この行は実行されません")
sys.exit(1)
のように 1
を指定するとエラー終了 になります。
-
sys.exit(0)
→ 正常終了(問題なし) -
sys.exit(1)
→ 異常終了(エラー)
print(f"{month} is neither a month number (1..12) nor a name")
sys.exit(1) # 異常終了
エラーが発生したときに sys.exit(1)
を使うと、明確にプログラムを終了できる!
✅ まとめ
🎯 sys
モジュールのポイント
-
sys.argv
→ コマンドライン引数を取得 する -
sys.exit()
→ プログラムを強制終了 する -
sys.version
→ Pythonのバージョン情報を取得 する -
sys.path
→ Pythonの検索パスを取得 する -
sys.exit(1)
で 間違った入力をエラー終了 させた