argparse参数输入

import argparse
parser = argparse.ArgumentParser()
#设置参数组
req_grp = parser.add_argument_group('required')

#第一个为必带参数,第二个为可选参数
req_grp.add_argument('checkpoint_dir', default=None, 
help='directory to save checkpoints to.')
req_grp.add_argument('--eval_data_dir', default=None, 
type=str, help='directory with the validation data.')

#设置标志位,"store_true"设置为true,"store_false"设置为false
data_grp.add_argument('--rotate', dest="rotate", action="store_true", 
help='rotate data augmentation.')
data_grp.add_argument('--norotate', dest="rotate", 
action="store_false")
#设置选择模型的名字,从choices=models.__all__中选择,默认值default=models.__all__[0]
model_grp.add_argument('--model_name', default=models.__all__[0], 
type=str, help='classname of the model to use.', choices=models.__all__)
#设置int参数
model_grp.add_argument('--net_input_size', default=256, type=int, 
help="size of the network's lowres image input.")
#设置int数组参数
model_grp.add_argument('--output_resolution', default=[512, 512], 
type=int, nargs=2, help='resolution of the output image.')

#设置初始默认值
parser.set_defaults(rotate=False)
args = parser.parse_args()

#调取cmd参数数值并记录进入参数list
model_params = {}
for a in model_grp._group_actions:
   model_params[a.dest] = getattr(args, a.dest, None)

#运行主函数
main(args, model_params, data_params)

你可能感兴趣的:(argparse参数输入)