argparse基本用法
发布日期:2021-05-07 00:10:00 浏览次数:19 分类:技术文章

本文共 1211 字,大约阅读时间需要 4 分钟。

argparse 是python自带的命令行参数解析包,可以在终端运行该py文件的时候传入参数。

基本用法如下:

# test.py(文件名称)import argparsedef main():    # 1.生成一个parser对象,添加参数解析器的描述    parser = argparse.ArgumentParser(description="training")    # 2.增加参数(属性、成员)    parser.add_argument('-m', '--model', default='ResNet', help='the model in training')    parser.add_argument('-b', '--batchsize', default='32')    parser.add_argument('--sparse', action='store_true', default=False, help='GAT with sparse version or not.')    # 3.获取解析的参数    args = parser.parse_args()    print(args)    model = args.model    batch_size = args.batchsize    sparse = args.sparse    print('{} {} {}'.format(model, batch_size, sparse))if __name__ == '__main__':    main()

在终端中运行该test.py程序

python test.py -h						# 可以查看帮助信息python test.py 							# 输出程序默认值:ResNet 32 Falsepython test.py -m VGG --batchsize 12  	# 输出:VGG 12 Falsepython test.py --sparse 				# 输出:ResNet 32 True

值得注意的是:

① 在添加的参数中,’-m’,’–model’表示同一个参数。当’-‘和’- -'同时出现的时候,系统默认后者为参数名,前者不是,所以在程序中model = args.m的写法是错误的。但是,在命令行输入的时候没有任何区别,即 python test.py -m VGG 和 python test.py --m VGG作用是一样的。

② default参数表示我们在运行命令时若没有提供参数,程序会将此值当做默认参数值。

③ 参数sparse的设置中包含action的作用:在命令行中,sparse参数没有被传入,sparse为False;当在命令行中传入了- -sparse的时候,sparse就变成了True。

上一篇:torch笔记十四 | ImageFolder & DataLoader
下一篇:ReID基础 | ReID工程中的一些小trick

发表评论

最新留言

很好
[***.229.124.182]2025年04月06日 14时37分27秒