概要
コマンドライン引数を使ってPythonのファイルを実行する方法を示す。
コマンドライン引数を実行するためにはargparse
をインポートすればよい。
ソースコード arg_parse.py
import argparse parser = argparse.ArgumentParser() num1 = 6 num2 = 3 #### Caution: #### The command '-h' does not allowed #### because '-h' is preserved that '-h' is '--help'. parser.add_argument('-a', '--add', help='operation add', action='store_true') parser.add_argument('-s', '--subtraction', help='operation subtraction', action='store_true') parser.add_argument('-m', '--multiplication', help='operation multiplication', action='store_true') parser.add_argument('-d', '--division', help='operation division', action='store_true') parser.add_argument('-taa', '--two_args_add', nargs=2, type=int, help='two arguments add') parser.add_argument('-t', '--test_one_arg', type=int, default=0, help='test one argument with default') args = parser.parse_args() print('args = {}'.format(args)) print('num1 = {}'.format(num1)) print('num2 = {}'.format(num2)) if args.add: print('num1 + num2 = {}'.format(num1 + num2)) if args.subtraction: print('num1 - num2 = {}'.format(num1 - num2)) if args.multiplication: print('num1 * num2 = {}'.format(num1 * num2)) if args.division: print('num1 / num2 = {}'.format(num1 / num2)) if args.two_args_add: args1 = args.two_args_add[0] args2 = args.two_args_add[1] print('args1 + args2 = {} + {} = {}'.format(args1, args2, args1 + args2)) #### print('type(args) = {}'.format(type(args))) print('vars(args) = {}'.format(vars(args))) print('type(vars(args)) = {}'.format(type(vars(args)))) #### dict_args = vars(args) bool_flag = False for var in list(dict_args.values()): if var: bool_flag = True if not bool_flag: print('NO OPTION') #### for key, value in dict_args.items(): if value: print('key: {}, value: {}'.format(key, value))
実行結果
(I) NO OPTIONS:
(II) OPTION:
(III) TWO ARGUMENTS:
(IV) help option:
(未完)