NTM中的argparse

文章目录

代码

    parser = argparse.ArgumentParser(prog='train.py')
    parser.add_argument('--seed', type=int, default=RANDOM_SEED, help="Seed value for RNGs")
    parser.add_argument('--task', action='store', choices=list(TASKS.keys()), default='copy',
                        help="Choose the task to train (default: copy)")
    parser.add_argument('-p', '--param', action='append', default=[],
                        help='Override model params. Example: "-pbatch_size=4 -pnum_heads=2"')
    parser.add_argument('--checkpoint-interval', type=int, default=CHECKPOINT_INTERVAL,
                        help="Checkpoint interval (default: {}). "
                             "Use 0 to disable checkpointing".format(CHECKPOINT_INTERVAL))
    parser.add_argument('--checkpoint-path', action='store', default='./',
                        help="Path for saving checkpoint data (default: './')")
    parser.add_argument('--report-interval', type=int, default=REPORT_INTERVAL,
                        help="Reporting interval")

    argcomplete.autocomplete(parser)

    args = parser.parse_args()
    args.checkpoint_path = args.checkpoint_path.rstrip('/')

    return args

解析

parser = argparse.ArgumentParser(prog='train.py')

首先创建了一个 ArgumentParser 对象 parser,指定了一个 prog 参数,该参数会在帮助信息中显示程序的名称。

parser.add_argument('--seed', type=int, default=RANDOM_SEED, help="Seed value for RNGs")

添加了一个名为 --seed 的命令行参数,类型为整数,缺省值为了一个名为 RANDOM_SEED 的常量,帮助信息为 “Seed value for RNGs”。

parser.add_argument('--task', action='store', choices=list(TASKS.keys()), default='copy',
                        help="Choose the task to train (default: copy)")

添加了一个名为 --task 的命令行参数,指定了参数的行为为 store(将命令行参数存储到 Namespace 对象中),限制了可选值为 TASKS 字典的键列表,并且缺省值设置为 ‘copy’,帮助信息为 “Choose the task to train (default: copy)”。

parser.add_argument('-p', '--param', action='append', default=[],
                        help='Override model params. Example: "-pbatch_size=4 -pnum_heads=2"')

添加了一个名为 -p 或 --param 的可重复命令行参数,指定了参数的行为为 append(追加到一个列表中),缺省值为一个空列表,帮助信息为 “Override model params. Example: “-pbatch_size=4 -pnum_heads=2””。

parser.add_argument('--checkpoint-interval', type=int, default=CHECKPOINT_INTERVAL,
                        help="Checkpoint interval (default: {}). "
                             "Use 0 to disable checkpointing".format(CHECKPOINT_INTERVAL))

添加了一个名为 --checkpoint-interval 的命令行参数,类型为整数,缺省值为 CHECKPOINT_INTERVAL(常量定义),帮助信息为 “Checkpoint interval (default: {CHECKPOINT_INTERVAL}). Use 0 to disable checkpointing”。

parser.add_argument('--checkpoint-path', action='store', default='./',
                        help="Path for saving checkpoint data (default: './')")

添加了一个名为 --checkpoint-path 的命令行参数,指定了参数的行为为 store,缺省值为字符串 ‘./’,帮助信息为 “Path for saving checkpoint data (default: ‘./’)”。

parser.add_argument('--report-interval', type=int, default=REPORT_INTERVAL,
                        help="Reporting interval")

添加了一个名为 --report-interval 的命令行参数,类型为整数,缺省值为 REPORT_INTERVAL(常量定义),帮助信息为 “Reporting interval”。

argcomplete.autocomplete(parser)

使用 argcomplete 库对命令行参数进行自动补全处理。

args = parser.parse_args()
args.checkpoint_path = args.checkpoint_path.rstrip('/')

解析命令行参数,并使用 rstrip() 方法删除 args.checkpoint_path 右侧的斜杠 /。最后将解析后的命令行参数 args 返回。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值