码迷,mamicode.com
首页 > 其他好文 > 详细

argparse模块

时间:2017-06-06 14:18:41      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:命令   src   desc   device   optional   blog   add   type   work   

模块argparse是python标准库中推荐的命令行解析模块

简明使用步骤:

1:import argparse                  首先导入该模块

2:parser = argparse.ArgumentParser()      然后创建一个解析对象

3:parser.add_argument()              然后向该对象中添加你要关注的命令行参数和选项,每一个add_argument方法对应一个你要关注的参数或选项

4:parser.parse_args()               最后调用parse_args()方法进行解析,解析成功之后即可使用

以下是fast-rcnn代码中train_net的使用:

def parse_args():
    """
    Parse input arguments
    """
    parser = argparse.ArgumentParser(description=Train a Fast R-CNN network)
    parser.add_argument(--gpu, dest=gpu_id,
                        help=GPU device id to use [0],
                        default=0, type=int)
    parser.add_argument(--solver, dest=solver,
                        help=solver prototxt,
                        default=None, type=str)
    parser.add_argument(--iters, dest=max_iters,
                        help=number of iterations to train,
                        default=40000, type=int)
    parser.add_argument(--weights, dest=pretrained_model,
                        help=initialize with pretrained model weights,
                        default=None, type=str)
    parser.add_argument(--cfg, dest=cfg_file,
                        help=optional config file,
                        default=None, type=str)
    parser.add_argument(--imdb, dest=imdb_name,
                        help=dataset to train on,
                        default=voc_2007_trainval, type=str)
    parser.add_argument(--rand, dest=randomize,
                        help=randomize (do not use a fixed seed),
                        action=store_true)
    parser.add_argument(--set, dest=set_cfgs,
                        help=set config keys, default=None,
                        nargs=argparse.REMAINDER)

    if len(sys.argv) == 1:
        parser.print_help()
        sys.exit(1)

    args = parser.parse_args()
    return args

这是没加任何参数直接输入的情况:

技术分享

这和输入python train_net.py -h是一样的效果,因为原代码中有这样一段代码:

if len(sys.argv) == 1:
        parser.print_help()
        sys.exit(1)

 

argparse模块

标签:命令   src   desc   device   optional   blog   add   type   work   

原文地址:http://www.cnblogs.com/ymjyqsx/p/6951028.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!