シンプルに実行してみる
typeを設定すると型を設定でき、それ以外のものを渡そうとするとエラーになる。defaultに値を設定しておくと、引数が渡されなかったときに使用される。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-c', '--count', default=2, type=int)
parser.add_argument('-u', '--user_name', default='hawk')
args = parser.parse_args()
print(args.count, args.user_name)
上記を保存して、以下のように実行します。
test.py -c 3 # countは3, user_nameはhawk と出力される
test.py --count 42 -u 'Taka' # countは42, user_nameはTaka と出力される
ヘルプ時に引数の説明を入れる
-h でヘルプを出力するときにメッセージを付加できます。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-c', '--count', help='help message', type=int)
args = parser.parse_args()
print(args.count)
必須の引数を設定する
-cが設定されていないとエラーになります。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-c', '--count', required=True)
args = parser.parse_args()
print(args.count)
引数の値を指定する
-cに-1, 0, 1のいずれかの値のみを設定できるように、他の値を入れるとエラーになる。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-c', '--count', type=int, choices=[-1,0,1])
args = parser.parse_args()
print(args.count)