Czy nie można ustawić wartości domyślnej w pakiecie flag w programie Go? Na przykład w pakiecie flagę można napisać następującą linię:pakiet flag w Go - czy zawsze muszę ustawić domyślną wartość?
filename := flag.String("file", "test.csv", "Filename to cope with")
w powyższym kodzie, nie chcę koniecznie ustawić wartość domyślną, która jest test.csv
w tym przypadku, a zamiast tego zawsze sprawiają, że użytkownicy określić własną nazwę pliku, a jeśli nie jest określona, chcę spowodować błąd i zamknąć program.
Jeden drodze wpadłem na to, że najpierw sprawdzić wartość filename
po zrobieniu flag.Parse()
i jeśli ta wartość jest test.csv
to mam program wychodzi z odpowiednim komunikatem o błędzie. Nie chcę jednak pisać takiego zbędnego kodu, jeśli można go uniknąć - a nawet jeśli nie, chciałbym usłyszeć lepszy sposób na poradzenie sobie z tym problemem.
można zrobić tych rodzaju operacji w moduł Pythona argparse
przy okazji - po prostu chcą zaimplementować coś podobnego, jeśli mogę ...
Również mogę realizować oba argumenty krótkich i długich (innymi słów zarówno argumentu -f
i -file
?) w pakiecie flag?
Dzięki.
Proszę zadać tylko jedno pytanie na pytanie. – Kissaki