Python コマンドライン引数 #1 sys.argv

株式会社リュディアです。今回は Python のコマンドライン引数についてまとめてみます。Jupyter Notebook を使っておられる方は少し設定が面倒になるので今回は Windows のコマンドプロンプトから Python を実行します。Windows のコマンドプロンプトで Python が実行可能になっていることを前提として進めていきます。

Python スクリプトでコマンドライン引数を使うにはシステムパラメータと関数が定義されている sys を import する必要があります。

import sys

その後、__main__ 内で sys.argv を用いてコマンドライン引数にアクセスします。具体例を以下に示します。

import sys

if __name__=='__main__':
   print(len(sys.argv))
   print(sys.argv[0])
   print(sys.argv[1])
   print(sys.argv[2])
   print(sys.argv[3])

# % python CommandArgs.py aaa bbb ccc
# 4
# CommandArgs.py
# aaa
# bbb
# ccc

コマンドライン引数はリスト sys.argv の要素として __main__ に渡されます。そのため引数個数を調べるには len(sys.argv) でリストの要素数を確認します。また実際のコマンドライン引数は sys.argv[0] から使われます。しかし sys.argv[0] は Python スクリプト自体になりますので引数は sys.argv[1] から順に使われていきます。同様に len(sys.argv)にも Python スクリプト自体が含まれていることに注意してください。

Python のコマンドライン引数に関するまとめの続きは以下からどうぞ。

では、ごきげんよう。


この記事が気に入ったらサポートをしてみませんか?