Skip to content

5.2 コマンドライン引数

Pythonのスタンドアローンプログラムは、ターミナル(コマンドライン)から実行する際に、外部からデータ(引数)を受け取ることができます。

コマンドライン引数の受け取り方

Section titled “コマンドライン引数の受け取り方”

コマンドラインから渡された引数にアクセスするには、標準ライブラリの sys モジュールをインポートし、sys.argv という変数(リスト)を使用します。

実際に動きを確認するために、以下の2行を含む test2.py というファイルを作成してみましょう。

# test2.py の内容
import sys
print('Program arguments:', sys.argv)

ターミナルウィンドウを開き、作成したプログラムにスペース区切りで文字を渡して実行してみます。

Terminal window
$ python test2.py
Program arguments: ['test2.py']
Terminal window
$ python test2.py tra la la
Program arguments: ['test2.py', 'tra', 'la', 'la']

実行結果から、sys.argv には以下のような特徴があることがわかります。

  • 最初の要素 (sys.argv[0]): 常に実行したプログラムのファイル名自体(この場合は 'test2.py')が格納されます。
  • 2番目以降の要素 (sys.argv[1:]): コマンドラインで入力した追加の文字列('tra', 'la', 'la')が、順番にリストの要素として格納されます。