Python:argparse子命令子命令?
发布时间:2020-12-16 23:30:54 所属栏目:Python 来源:网络整理
导读:我有一个有很多可用选项的程序. 例如,用于更改设置的配置选项. ./app config -h 使用普通的argparse子命令给我帮助 现在我想在config子命令中添加另一个子命令,名为list以列出配置值 ./app config list 此外,该命令应该接受另一个选项,以便我可以说 ./app co
|
我有一个有很多可用选项的程序.
例如,用于更改设置的配置选项. ./app config -h 使用普通的argparse子命令给我帮助 现在我想在config子命令中添加另一个子命令,名为list以列出配置值 ./app config list 此外,该命令应该接受另一个选项,以便我可以说 ./app config list CATEGORY 仅列出一个类别的配置 我现在的代码基本上就是这个命令 >>> parser = argparse.ArgumentParser()
>>> subparsers = parser.add_subparsers(title='subcommands',... description='valid subcommands',... help='additional help')
>>> subparsers.add_parser('foo')
>>> subparsers.add_parser('bar')
>>> parser.parse_args(['-h'])
usage: [-h] {foo,bar} ...
optional arguments:
-h,--help show this help message and exit
subcommands:
valid subcommands
{foo,bar} additional help
到目前为止,我找不到在子命令中使用子命令的任何方法. 提前致谢 解决方法#file: argp.py
import argparse
parser = argparse.ArgumentParser(prog='PROG')
parser_subparsers = parser.add_subparsers()
sub = parser_subparsers.add_parser('sub')
sub_subparsers = sub.add_subparsers()
sub_sub = sub_subparsers.add_parser('sub_sub')
sub_sub_subparsers = sub_sub.add_subparsers()
sub_sub_sub = sub_sub_subparsers.add_parser('sub_sub_sub')
似乎工作. In [392]: run argp.py
In [393]: parser.parse_args('sub sub_sub sub_sub_sub'.split())
Out[393]: Namespace()
In [400]: sys.version_info
Out[400]: sys.version_info(major=2,minor=7,micro=2,releaselevel='final',serial=0)
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |








