Pythonのargparseモジュールを使用して、一般的なCLI(コマンドラインインターフェース)における--help
や--version
のような動きをするコマンドを実装する方法を紹介します。
まずは、argparse.ArgumentParserクラスをインスタンス化します。このクラスは、引数の仕様を定義し、argparseがsys.argvからそれらの引数を解析する方法を見つけ出します。
import argparse
parser = argparse.ArgumentParser(prog="sample", usage="python main.py <file_name> <password>", description="sample script.")
次に、add_argument
メソッドを使用して、引数の仕様をパーサーに追加します。このメソッドは位置引数、値を受け取るオプション、機能のオン/オフを切り替えるフラグをサポートします。
parser.add_argument('filename') # positional argument
parser.add_argument('-c', '--count') # option that takes a value
parser.add_argument('-v', '--verbose', action='store_true') # on/off flag
最後に、parse_args
メソッドを使用して、パーサーを実行し、抽出したデータをargparse.Namespaceオブジェクト内に配置します。
args = parser.parse_args()
print(args.filename, args.count, args.verbose)
以上の手順で、argparseを使用して--help
や--version
のような動きをするコマンドを実装することができます。
この記事がPython argparseの使用に役立つことを願っています。
参考リンク:
– argparse — コマンドラインオプション、引数、サブコマンドのパーサー — Python 3.9.4 ドキュメント
– 【Python】argparse で --help
や --version
のようなコマンドを自作する #Python – Qiita