[Python] argparse で名前付きのコマンドライン引数を受け取る

作成日: 2026年11月08日

標準ライブラリの argparse モジュールを使用すると、--name のような名前付きのコマンドライン引数を受け取ることができます。

下記のコードを greet.py として保存します。

import argparse

parser = argparse.ArgumentParser()
parser.add_argument("--name", required=True)
parser.add_argument("--count", type=int, default=1)
args = parser.parse_args()

for _ in range(args.count):
    print(f"Hello, {args.name}!")

--name に名前、--count に繰り返す回数を指定して実行します。

python3 greet.py --name Taro --count 2

実行結果は下記のとおりです。

Hello, Taro!
Hello, Taro!

required=True を指定した --name は必須です。--count は type=int によって整数に変換され、省略すると default=1 が使用されます。

python3 greet.py --name Taro
Hello, Taro!

--name を省略したり、--count に整数に変換できない文字列を指定したりすると、エラーメッセージが表示され、終了ステータス 2 で終了します。python3 greet.py --help で利用できる引数の説明を表示することもできます。

引数を文字列のまま取得する方法は、コマンドライン引数を得るを参照してください。

参考

Python