Wiem, że nie ma sensu wiele argumentów pozycyjnych w wykluczającą się grupę, ponieważ nie można powiedzieć, kto jest kim. Ale muszę uwzględnić w tym JEDEN argument pozycyjny.Jak uwzględnić jeden argument pozycyjny w grupie wzajemnie się wykluczającej?
Co potrzebne:
$ myprogram -h
usage: myprogram [-h] [--delete value | --update value | value]
Gdzie pozycyjny value
jest domyślną akcję (rodzaj "--include"). (myprogram
bez argumentów również musi być prawidłowe).
Moja pierwsza próba (to nie działa):
parser = ArgumentParser()
group = parser.add_mutually_exclusive_group()
group.add_argument('--delete', metavar='value')
group.add_argument('--update', metavar='value')
group.add_argument('value')
Czy to możliwe?
Druga próba:
parser = ArgumentParser()
group = parser.add_mutually_exclusive_group()
group.add_argument('--delete', action='store_true')
group.add_argument('--update', action='store_true')
group.add_argument('--insert', action='store_true', default=True)
group.add_argument('value')
+1 dobre podejście – msw