python - argparse,两个参数相互依赖

标签 python argparse

我想让解析器像 cmd [-a xxx -b xxx] -c xxx -d xxx

当使用-a时,我希望也使用-b。同样,如果使用 -b,则也必须使用 -a-a-b 都不用也没关系。

我该怎么做?我尝试过自定义操作,但效果不佳。

最佳答案

更好的设计是有一个带有两个参数的选项:

parser.add_argument('-a', nargs=2)

然后您要么指定带有 2 个参数的选项,要么根本不指定它。

$ script -a 1 2

$ script

自定义操作(或后处理)可以将元组 args.a 拆分为两个单独的值 args.aargs.b

关于python - argparse,两个参数相互依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16967790/

相关文章:

python - ArgumentParser -h 在 parse_known_args 之后不打印选项

python - 模块未找到错误: No module named 'adspy_shared_utilities'

python - 更改 Pandas Dataframe 中的列值以将数字显示为百万

python - 想要在列表中存储变量名称,而不是变量的内容

python - 如何在 python 中重定向函数的打印输出

python - Pandas DataFrame 到 Hive 表

python - 从 ArgumentParser 在 Python 中解析的 args 创建 arg 字符串

python - 如何捕获导致 argparse 在 Python 中引发错误的值

python - 如何迭代参数