argparseが楽しい件

過去記事の一覧はこちら。 記事一覧 - Baggage Claim


繁忙期が終わっていまひとつ研究に身が入らない。 今日はコマンドラインから引数を受け取る機能を実装して遊んでいた。

import argparse

def get_config():

    parser = argparse.ArgumentParser(description='Configuration') 

    parser.add_argument('initial', type=int, help='initial value')
    parser.add_argument('--parameter', type=float, default=.01, help='tuning parameter')

    args = parser.parse_args()

    print('initial is', args.initial)
    print('parameter is', args.parameter, "\n")

    return args.initial, args.parameter


def main():

    initial, parameter = get_config()
    print(initial + parameter)

main()

コマンドライン。オプション引数のparameterにはデフォルト値が入る。

python run.py 3
# initial is 3
# parameter is 0.01
#
# 3.01

オプション引数を指定する場合のコマンドライン

python run.py 5 --parameter 0.1
# initial is 5
# parameter is 0.1
#
# 5.1

ヘルプを見ることもできる。

python run.py -h

Configuration

positional arguments:
  initial                   initial value          

optional arguments:
  -h, --help                show this help message and exit
  --parameter PARAMETER     tuning parameter     

こちらを参考に。

ArgumentParserの使い方を簡単にまとめた - Qiita