Python:argparse模块

先看一个常见的写法:

注意:加重的红色框框是使用argparse模块的几个核心步骤:

下面分步学习:

一:首先了解argparse模块的用途

       argparse是python标准库里面用来处理命令行参数的库。

Note:命令行参数分为:位置参数和选项参数两类。

二、使用的核心步骤就是图片的红色框框:

(1)首先,导入模块:

import argparse

(2)然后:创建一个解析对象:

FLAGS = argparse.ArgumentParser()

(3)向该对象中添加你要关注的命令行参数和选项

FLAGS = argparse.ArgumentParser()
FLAGS.add_argument('--arch',
                   choices=['vgg', 'resnet', 'densenet'],
                   help='Architectures', default='vgg')
FLAGS.add_argument('--scale', choices=[2], type=int)
FLAGS.add_argument('--mode',
                   choices=['finetune', 'eval'],
                   help='Run mode', default='finetune')

(4)最后,切记,对对象要进行解析:

args = FLAGS.parse_args()

三、接下来需要关注一下:add_argument()方法的常用参数:

(1)name or flags...    - 必选,指定参数的形式,一般写两个,一个短参数,一个长参数

(2)help 可以写帮助信息 

(3)type  指定参数类型

(4)choices 设置参数的范围,如果choice中的类型不是字符串,要指定type表示该参数能接受的值只能来自某几个值候选值中,除此之外会报错,用choice参数即可

(5)action 表示值赋予键的方式,这里用到的是bool类型,action意思是当读取的参数中出现指定参数的时候的行为;

剩下的还有:

(6)required  必需参数,通常-f这样的选项是可选的,但是如果required=True那么就是必须的了

(7)nargs  指定这个参数后面的value有多少个,默认为1

Note:后续两种还没使用,后续更新。

猜你喜欢

转载自blog.csdn.net/songchunxiao1991/article/details/83578596
今日推荐