argparse学习记录

本文为之前学习的一个总结(PPT记录还是有些局限)。

argparse用于个人给程序定义它需要传入什么参数。

- 使用方法:

1、创建解释器

parser = argparse.ArgumentParser(description='TimesNet')

 argparse 模块对命令行接口的支持是围绕 argparse.ArgumentParser 的实例建立的。 它是一个用于参数规格说明的容器,包含把命令转变成python数据类型的所需的全部信息。

2、添加参数

parser.add_argument('--model', type=str, required=True, default='Autoformer',
                     help='model name, options: [Autoformer, Transformer, TimesNet]')

ArgumentParser.add_argument() 方法把参数一个个添加到解析器中,(添加到一个叫argparse.Namespace的对象中)。

3、解析参数

args = parser.parse_args()

- 详述:

1. 有关ArgumentParser 对象的解释

  • prog - 程序的名称 (默认值: os.path.basename(sys.argv[0]))

  • usage - 描述程序用途的字符串(默认值:从添加到解析器的参数生成)

  • description - 要在参数帮助信息之前显示的文本(默认:无文本)

  • epilog - 要在参数帮助信息之后显示的文本(默认:无文本)

  • parents - 一个 ArgumentParser 对象的列表,它们的参数也应包含在内

  • formatter_class - 用于自定义帮助文档输出格式的类

  • prefix_chars - 可选参数的前缀字符集合(默认值: '-')

  • fromfile_prefix_chars - 当需要从文件中读取其他参数时,用于标识文件名的前缀字符集合(默认值: None

  • argument_default - 参数的全局默认值(默认值: None

  • conflict_handler - 解决冲突选项的策略(一般没用)

  • add_help - 为解析器添加一个 -h/--help 选项(默认值: True

  • allow_abbrev - 如果缩写无歧义,则允许缩写长选项 (默认值:True

  • exit_on_error - 决定当错误发生时是否让 ArgumentParser 附带错误信息退出。 (默认值: True)

2. 有关 add_argument() 的解释

action

指明应当如何处理一个参数

'store', 'store_const', 'store_true', 'append', 'append_const', 'count', 'help', 'version'

choices

将值限制为指定的可选项集合

['foo', 'bar'], range(1, 10)Container 实例

const

存储一个常量值

default

当未提供某个参数时要使用的默认值

默认为 None

dest

指定要在结果命名空间中使用的属性名称

help

某个参数的帮助消息

metavar

要在帮助中显示的参数替代显示名称

nargs

参数可被使用的次数

int, '?', '*''+'

required

指明某个参数是必需的还是可选的

TrueFalse

type

自动将参数转换为给定的类型

int, float, argparse.FileType('w') 或可调用函数

其中比较难理解如下:

action中的 ——

  1. store_true: 调用了这个参数,则返回True;
  2. store_const: 调用了这个参数,则返回const值,const值在后面定义;

dest:如果提供dest,例如dest=“datapath”,那么可以通过args.datapath访问该参数。

(argparse模块中的参数action、dest使用_argparse dest-CSDN博客)

metavar: 参数的默认值是使用参数的名称大写作为显示名称。如果指定 metavar 参数,则在帮助文档中显示的参数名称将使用该名称。

- 总结

import argparse

parser = argparse.ArgumentParser()                                 #构建
parser.add_argument("--oho", help="aaaaaa")                        #增加参数
args = parser.parse_args()                                         #解析

print(args.oho)

更改以上三个步骤的模块做练习。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值