我需要的是:
pro [-a xxx | [-b yyy -c zzz]]
Run Code Online (Sandbox Code Playgroud)
我尝试了这个但是没有用.有人可以帮帮我吗?
group= parser.add_argument_group('Model 2')
group_ex = group.add_mutually_exclusive_group()
group_ex.add_argument("-a", type=str, action = "store", default = "", help="test")
group_ex_2 = group_ex.add_argument_group("option 2")
group_ex_2.add_argument("-b", type=str, action = "store", default = "", help="test")
group_ex_2.add_argument("-c", type=str, action = "store", default = "", help="test")
Run Code Online (Sandbox Code Playgroud)
谢谢!
如果我有参数'-a', '-b', '-c', '-d',使用该add_mutually_exclusive_group()函数我的程序将只使用其中一个.有没有办法将它结合起来,以便程序只接受'-a 999 -b 999'或'-c 999 -d 999'?
编辑:添加一个简单的程序,以便更清晰:
>>> parser = argparse.ArgumentParser()
>>> group = parser.add_mutually_exclusive_group()
>>> group.add_argument('-a')
>>> group.add_argument('-b')
>>> group.add_argument('-c')
>>> group.add_argument('-d')
Run Code Online (Sandbox Code Playgroud)
然后./app.py -a | ./app.py -b | ./app.py -c | ./app.py -d才能被召唤.是否有可能让argparse组成为排除组,因此只能./app.py -a .. -b .. | ./app.py -c .. -d ..被调用?