gpt4 book ai didi

python - 控制 argparse 帮助参数列表的格式?

转载 作者:IT老高 更新时间:2023-10-28 22:22:34 28 4
gpt4 key购买 nike

import argparse
parser = argparse.ArgumentParser(prog='tool')
args = [('-u', '--upf', 'ref. upf', dict(required='True')),
('-s', '--skew', 'ref. skew', {}),
('-m', '--model', 'ref. model', {})]
for args1, args2, desc, options in args:
parser.add_argument(args1, args2, help=desc, **options)

parser.print_help()

输出:

usage: capcheck [-h] -u UPF [-s SKEW] [-m MODEL]

optional arguments:
-h, --help show this help message and exit
-u UPF, --upf UPF ref. upf
-s SKEW, --skew SKEW ref. skew
-m MODEL, --model MODEL
ref. model

如何打印 ref. model 在与 -m MODEL, --model MODEL 相同的行中,而不是在我使用 -h 选项运行脚本时出现在单独的行上?

最佳答案

您可以提供 formatter_class 参数:

parser = argparse.ArgumentParser(prog='tool',
formatter_class=lambda prog: argparse.HelpFormatter(prog,max_help_position=27))

args = [('-u', '--upf', 'ref. upf', dict(required='True')),
('-s', '--skew', 'ref. skew', {}),
('-m', '--model', 'ref. model', {})]
for args1, args2, desc, options in args:
parser.add_argument(args1, args2, help=desc, **options)

parser.print_help()

注意:argparse.HelpFormatter 的实现是私有(private)的,只有名称是公共(public)的。因此,代码可能会在 argparse 的 future 版本中停止工作。提交功能请求,为 http://bugs.python.org/ 上的 max_help_position 的自定义提供公共(public)接口(interface)

输出

usage: tool [-h] -u UPF [-s SKEW] [-m MODEL]

optional arguments:
-h, --help show this help message and exit
-u UPF, --upf UPF ref. upf
-s SKEW, --skew SKEW ref. skew
-m MODEL, --model MODEL ref. model

关于python - 控制 argparse 帮助参数列表的格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5462873/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com