argparseによるコマンドライン引数の解析

以下のようなコマンドライン引数を受け取るhoge.pyなるPythonスクリプトを書いてみる。

(オプション引数)
-n または --name 名前
-y または --year 年齢

(通常引数)
第一引数 母国
第二引数 言語

こんな感じで実行できるようにしたい。

hoge.py -n Taro -y 22 Japan English

(スクリプト) hoge.py

from argparse import ArgumentParser as ap

parser = ap()
parser.add_argument("country", help="母国")     # 第一引数
parser.add_argument("language", help="言語")    # 第二引数
parser.add_argument("-n", "--name", help="名前") # オプション引数
parser.add_argument("-y", "--year", help="年齢", type=int, default=20) # オプション引数
args = parser.parse_args()

country = args.country
language = args.language

if args.name:
    name = args.name
else:
    name = ''

if args.year:
    age = args.year

print("""名前:{}
年齢:{}
母国:{}
言語:{}""".format(name, age, country, language))

参考サイト

↓詳しい使い方はこちら
Argparse チュートリアル