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 返回。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部