在argparse中设置互斥集

时间:2013-02-20 16:54:30

标签: python argparse

我正在使用一个互斥的群组,但我不止一个选择在其中一个独家群集中。我希望我的用法看起来像这样:

[--conf CONF | --hostname HOSTNAME --port PORT]

知道怎么做到这一点?我已经尝试将参数组添加到互斥组,但互斥部分不适用于子组,它允许--conf file --hostname host --port 22

1 个答案:

答案 0 :(得分:3)

不是使用argparse的答案,但是可能解决了你的问题:使用docopt代替argparse会让你只编写你的使用模式,让docopt自动解析并验证传递给你程序的args 。在你的情况下,

prog_name (--conf CONF | --hostname HOST --port PORT)

会为您提供您想要的互斥组。