小编Eli*_*lia的帖子

argparse选择允许值的结构

使用argparse相对于使用argparse组之间的Python依赖性,我有一个分析器的一些解析器组的参数部分-例如:

group_simulate.add_argument('-P',
                            help='simulate FC port down',
                            nargs=1,
                            metavar='fc_port_name',
                            dest='simulate')
Run Code Online (Sandbox Code Playgroud)

如何使用选项选项限制为下一个结构的参数列表:

1:m:"number between 1 and 10":p:"number between 1 and 4"
Run Code Online (Sandbox Code Playgroud)

我试图使用范围选项,但我找不到一种方法来创建一个可接受的选项列表

示例:法律参数:

test.py -P 1:m:4:p:2
Run Code Online (Sandbox Code Playgroud)

不合法的参数:

test.py -P 1:p:2
test.py -P abvds
Run Code Online (Sandbox Code Playgroud)

非常感谢你的帮助!

python argparse

10
推荐指数
1
解决办法
7630
查看次数

使用argparse的组之间的Python依赖关系

我开始学习Python,现在我正在学习它的巨大好处argparse.使用argparse,我创建了两组参数:group_listgroup_simulate.每个组都有自己的参数 - 用户只能在每个组中指定一个参数(使用实现parser.add_mutually_exclusive_group()).

现在我的目标是一个语法错误,如果用户从两个groupgs而不是只从其中一个指定参数 - 我想通过使用的功能来实现这一点,argparse而不是通过编写一个方法来询问是否指定了这个和打印语法错误.

import argparse
parser = argparse.ArgumentParser(
        description='this is the description',
        epilog="This is the epilog",
        argument_default=argparse.SUPPRESS  
        )

parser.add_argument('-v', '--verbose', help='verbose', action='store_true', default=False)

group_list = parser.add_mutually_exclusive_group()
group_list.add_argument('-m', help='list only modules', action='store_const', dest='list', const='modules', default='all')
group_list.add_argument('-p', help='list only ports', action='store_const', dest='list', const='ports', default='all')
group_list.add_argument('--list', help='list only module or ports', choices=['modules','ports'], metavar='<modules/ports>', default='all')

group_simulate = parser.add_mutually_exclusive_group()
group_simulate.add_argument('-M', help='simulate module down', nargs=1, metavar='module_name', dest='simulate')
group_simulate.add_argument('-P', help='simulate FC port …
Run Code Online (Sandbox Code Playgroud)

python arguments argparse

5
推荐指数
1
解决办法
9078
查看次数

标签 统计

argparse ×2

python ×2

arguments ×1