私は次のようなプログラムを書いています:
import argparse
def task1(args):
print "running task 1"
def task2(args):
print "running task 2"
if __name__=="__main__":
parser=argparse.ArgumentParser(description="How can I have mutually exclusive groups in subparsers?")
subparsers=parser.add_subparsers()
t1sub=subparsers.add_parser("task1")
#....
t1sub.set_defaults(func=task1)
# here I would like to have a mutually exclusive group
# when task 1 of the option one between --in and --out is required, but one excludes the other
# apparently a subparser has no add_group() not add_mutually_exclusive_group(), though
t2sub=subparsers.add_parser("task2")
#....
t1sub.set_defaults(func=task2)
args = parser.parse_args()
args.func(args)
task1を実行するときに説明したように、--in
または--out
必須ですが、両方ではありません。この機能をプログラムに追加するにはどうすればよいですか?