python-3.x - argparser 中的二阶嵌套子解析器
问题描述
我正在尝试使用 Argparse 做二阶子解析器,但它没有看到这个二阶子解析器的参数。
我的代码是这样的:
import argparse
parser = argparse.ArgumentParser()
subparsers = parser.add_subparsers(title="title", description="description")
parser1 = subparsers.add_parser("pars1")
parser1.add_argument("argA")
parser2 = subparsers.add_parser("pasr2")
parser2.add_argument("argB")
subparser2 = parser2.add_subparsers(title="subpars1", description="descr1")
parser3 = subparser2.add_parser("pars3")
parser3.add_argument("argC")
parser3.add_argument("argD")
args = parser.parse_args()
并且在帮助argC
中argD
不可见。所以我收到这个
./prog.py pars2 pars3 -h
positional arguments:
argB
subpars1:
{pars3}
pars3
而是这个
./prog.py pars2 pars3 -h
positional arguments:
argB
subpars1:
{pars3}
argC
argD
我的错误在哪里,或者只是 Argparse 不支持二阶子解析器?
解决方案
推荐阅读
- centos7 - Kerberos 失败 CentOS 7.5 Apache 2.4 Kerberos 5
- ruby - 如何在法拉第发送 MKCOL?
- ios - 呈现视图控制器时出现奇怪的错误
- mysql - 请发表意见 - 将遗留数据库从 CHAR(14) PK 切换为 INT
- python - python类方法的方法
- facebook - Facebook SDK 初始化创建第二个像素
- mongodb - Mongo - 查找随机文档
- android - onFocusChange 包括儿童?
- azure - 如何将文件从 azure powershell 加载到 Azure Data Lake
- android - 有没有办法为gridview上的每个项目分配id?