第一次写自己的博客,好激动,先偷乐一会。
写在入坑之前:
1.写博客的目的首先是为了加深自己的记忆,其次就是能在某一个知识点提供另一个角度来帮助更多的人理解。难免对很多问题理解的并不够全面,就学到哪写到哪吧~
2.因为自己是小白,所以免不了看大佬的文章然后理解、记录,但凡这种也会在文章中列出引用的文章。
fine,开始正题吧~~

**
本文引用:


1.argparse是什么?

**
argparse是Python中的一个常用模块,主要用于编写命令行接口:对于程序所需要的参数,它可以进行正确的解析。通俗一点说,就是我们在终端敲入命令,命令中所涉及的参数,可以通过利用argparse编写的程序实现对应和配置,并且它可以判断你命令行中设置的相关参数是否符合要求,对此,argparse也有helpusage来帮助你更好的敲入命令。

2.argparse三个主要函数:

1. parser = argparse.ArgumentParser()

使用argparse的第一步是创建ArgumentParser对象,就目前我的理解(水平有限:o),该函数就是在开头介绍一下该代码块是用来干什么。
例如:

parser = argparse.ArgumentParser(description='Process some integers.')#处理整型数据
parser = argparse.ArgumentParser(description='prepare UCF101 dataset')#准备ucf101数据集

2. parser.add_argument()
这才是该模块中最重要的函数!

调用add_argument()添加命令行参数信息,这些信息告诉ArgumentParser对象如何处理命令行参数。我们最后在main模块中可以通过调用parse_agrs()来使用这些命令行参数。例如:

parser.add_argument('integers', metavar='N', type=int, nargs='+',
                    help='an integer for the accumulator')
parser.add_argument('--sum', dest='accumulate', action='store_const',
                    const=sum, default=max,
                    help='sum the integers (default: find the max)')
parser.add_argument('--download_dir', type=str, default='/data2/han_wu/datasets/ucf101')
parser.add_argument('--src_dir', type=str, default='/data2/han_wu/datasets/ucf101/UCF101'
parser.add_argument('--out_dir', type=str, default='/data2/han_wu/datasets/ucf101/rawframes')
parser.add_argument('--frame_path', type=str, default='/data2/han_wu/datasets/ucf101/rawframes')

这两个代码段分别对应上面创建的两个ArgumentParser对象。

3. args = parser.parse_args()

通过调用parse_args()来解析ArgumentParser对象中保存的命令行参数:将命令行参数解析成相应的数据类型并采取相应的动作。
在实际的python脚本中,parse_args()一般并不使用参数。

args = parser.parse_args()

3. parser.add_argument()介绍

ArgumentParser.add_argument(name or flags…[, action][, nargs][, const][, default][, type][, choices][, required][, help][, metavar][, dest])

函数参数

介绍

name or flags

参数名或者参数标识

type

参数的数据类型

action

参数的处理

default

参数的默认值

choices

参数的选择范围

help

参数的说明信息

各函数参数的具体用法

name or flags:必选参数名或者可选参数标识符,它必须作为add_argument()方法的第一个参数。

# 可选参数
parser.add_argument('-f', '--foo')
# 必选参数
parser.add_argument('bar')

-开始为可选参数,其它的为必选参数。
action:可以对命令行参数进行适当的处理,最常用的动作就是在parse_args()返回的对象中添加一个属性。store- 存储参数的值。即在parser_args()方法返回的Namespace对象中添加属性,并设定它的值。

parser.add_argument('--foo', action='store_const', const=42)#‘store_const’将命令行参数的值设定为const指定值。
parser.add_argument('--foo', action='store_true')#‘store_true’ and ‘store_false’ - 将命令行参数的值设定为True或者False。
parser.add_argument('--bar', action='store_false')

default:必选参数和可选的参数的默认值。

parser.add_argument('--length', default='10', type=int)#默认length=10
parser.add_argument('--width', default=10.5, type=int)#默认width=10.5

type:命令行参数的数据类型,可以是任意Python支持的数据类型。
choices:命令行参数的选取范围。

parser.add_argument('--subset', type=str, default='train', choices=['train', 'val', 'test'])
parser.add_argument('--level', type=int, choices=[1, 2], default=2)

注意:type,default,choices要对应。

help:命令行参数的帮助信息,可以通过 -h/--help来显示。

python 实现arima python arg_命令行参数