Engineering Note

プログラミングなどの技術的なメモ

argparse

python-icon

コマンドラインインターフェースからスクリプトを実行する際に、オプションを渡したい場合がありますが、これを簡単にパースしてくれるのがargparseモジュールです。

ここでは基本的な使い方を学んでいきます。

 詳しい使い方は以下のドキュメントに記載されています。

16.4. argparse — コマンドラインオプション、引数、サブコマンドのパーサー — Python 3.6.5 ドキュメント

 

それでは、使い方を見ていきましょう。

 

上記の"--count"という書き方はロングオプションという引数の渡し方です。

またtypeで引数の型のチェックを行います。

もし不正な引数が与えられた場合は、以下のエラーが出力されます。

ショートオプションも受け付けるようにする場合は、add_argumentメソッドに以下のように追加します。

オプションが指定されなかった場合のデフォルト値は、add_argumentメソッドに以下のように追加します。

最後にヘルプを表示する場合は、add_argumentメソッドに以下のように追加します。

 

以上がargparseモジュールの簡単な使い方になります

PythonではC言語スタイルのコマンドラインオプションパーサであるgetopt()関数も使えますが、これだけで十分コマンドラインオプションパーサーとして機能し、こちらの方が直観的に使いやすいと感じます。

参考書籍:入門 Python 3