Wie soll ich die Argase strukturieren, um dies zu bilden? Sie sollten -l, -m, -s, -h, home oder work aufrufen können, aber nicht beides. Sie sollten -l oder -m aufrufen, bevor Sie -i verwenden können.Wie sollte ich die Argase strukturieren, um dies zu bilden?
prog home
prog work
prog -l -i1
prog -m -i1 -i2
prog -s
Der Code, den ich so etwas zu machen, schrieb:
usage: prog
(-l | -m) [-i1][-i2][-i3][-i4]
-s
-h
home
work
kann mit aufgerufen werden.
def get_args():
parser = argparse.ArgumentParser(prog="prog")
group = parser.add_mutually_exclusive_group(required=True)
group.add_argument('-l', action='store_true', help='List Mode. List available options', default=False, dest='list')
group.add_argument('-m', action='store_true', help='Departure Mode. Return a departure time from stopcode or agency and stopname', default=False, dest='mode')
group.add_argument('-s', action='store_true', help='Setup Mode. Enter setup mode to make a home and a work list of station codes.', default=False, dest='setup')
group.add_argument('home', help='Display HOME_LIST') # this causes it to break because positional arguments cant be required for some reason
group.add_argument('work', help='Display WORK_LIST')
parser.add_argument('-i1', nargs='?', dest='i1')
parser.add_argument('-i2', nargs='?', dest='i1')
parser.add_argument('-i3', nargs='?', dest='i1')
return parser.parse_args()
Leider ist Stack Overflow kein Code-Schreibdienst. Wenn Sie eine Lösung finden, die nicht zu funktionieren scheint, helfen wir Ihnen gerne, herauszufinden, was damit nicht stimmt, aber nach dem Code zu fragen, ohne uns zu zeigen, was Sie versucht haben, passt nicht zu den Regeln von Stack Overflow. – zondo
Okay, ich kann meinen schrecklichen Codeversuch hinzufügen – polka
ich muss gehen, ich kann Fragen in einer Stunde beantworten. – polka