zoukankan      html  css  js  c++  java
  • argparse模块

    模块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)
  • 相关阅读:
    08-01集合运算
    07-03成员运算符
    07-02集合
    07-01结构与封装
    06-01字符串格式化.md
    06-03线性结构与切片
    06-02字符串与bytes
    05-02命名元组
    05-01元组
    04-01列表与常用操作
  • 原文地址:https://www.cnblogs.com/ymjyqsx/p/6951028.html
Copyright © 2011-2022 走看看