Den følgende guiden demonstrerer hvordan du bruker argparse i Ubuntu, med Python3, og sørg dermed for at begge er lett tilgjengelige før du går videre. Hvis Python3 ikke er tilgjengelig, kan den installeres med følgende to kommandolinjer:
sudo apt-get oppdateringsudo apt-get install python3.6
Essensiell syntaks
Hensikten med denne veiledningen er å skissere kjernefunksjonene i argparse, og hvordan du bruker noen av alternativene. Argparse krever Python, og et notisblokk for å skrive inn kommandoene. Ubuntu har sin egen notisblokk, kjent som "Text editor", som er tilgjengelig via Ubuntu dash. Kommandoene utføres via terminal.
- Start Text Editor via Ubuntu Dash.
- Skriv inn følgende to linjer som de viktigste kodene. Første linje importerer argparse-modulen til kodebiten, mens den andre oppretter et argument-parserobjekt, som inneholder all informasjonen som kreves for å analysere kommandoer til Python-datatyper. importer argparse
parser = argparse.ArgumentParser () - Bruk følgende kommando for å konvertere argumentstrenger til objekter. Vanligvis blir objektet instantiert og tilordnet en variabel, men det er ikke nødvendig. parser.parse_args ()
- Programmet kan kjøres i Linux-terminal via python3 med følgende kommando. python3 pscript.py
Viser appbeskrivelsen
Appbeskrivelsesparameteren er å oppgi hva applikasjonen er for. Når hjelpekommandoen brukes med python-skriptet, vises appbeskrivelsen sammen med tilgjengelige flagg som skal brukes i programmet. Følgende linje må brukes for å angi appbeskrivelsen.
parser = argparse.ArgumentParser (beskrivelse = 'appbeskrivelse')
Viser beskrivelsen på slutten (epilog)
Som beskrivelsen kan epilogen vises på slutten med epilog-parameteren. I likhet med beskrivelsen, må den også spesifiseres i argumentParser-funksjonen.
Hvordan bruke argumenter
Argumenter er definert med add_argument () funksjon. Den spesifiserer hvilke posisjonsargumenter / argumenter som skal brukes med python-skriptet. Som standard godtar programmet -help-flagg som posisjonsargument, men mer kan legges til ved å bruke den nevnte funksjonen. Det er mange måter å legge til argumenter i applikasjonen.
Enkeltposisjonsargument
Enkeltposisjonsargumentet sørger for at programmet bare godtar ett argument. I det følgende eksemplet angir det bld som argumentet; Derfor kan bare bld brukes som et posisjonsargument når programmet kjøres. Hvis argumentet mangler, vil programmet kaste feil med advarselen "for få argumenter". Det spesielle med posisjonsargument er at det ikke trenger å bli oppgitt i terminalen når man gir argumenter til programmet.
parser.add_argument ("bld")
Posisjonsargument i en bestemt type
add_argument () tar ikke bare ett argument, men også flere argumenter som vist i følgende eksempel. Hvis flere argumenter er gitt, må de formateres som følger. Det første argumentet definerer posisjonsargumentets navn, det andre er dets type, noe som betyr at verdien av verdien aksepteres som argumentet for programmet, den siste er for beskrivelsen som bare vises når du bruker hjelpeflagget.
I det følgende skjermbildet viser det hvordan programmet nekter å godta ikke-integralverdi som posisjonsargument. Bare en heltallverdi kan sendes inn her nå.
parser.add_argument ('bld', type = int,help = "det kreves et heltall")
Valgfritt posisjonsargument i en spesiell type
Følgende kommandolinje er den samme som den over, bortsett fra at det gjør posisjonsargumentet valgfritt med nargs-parameteren; dermed kan brukeren utelate det når programmet kjøres. Imidlertid, hvis argumentet ble levert, må det være i riktig datatype, ellers vil det ikke fortsette å analysere som vanlig.
parser.add_argument ('bld', type = int, nargs = '?',help = 'Dette feltet er for valgfri heltallverdi')
Valgfritt argument i en spesiell type
Forskjellen mellom argument og posisjonsargument er posisjonsargument trenger ikke å nevnes, mens argumentet må nevnes som et flagg sammen med verdien når programmet kjøres. Følgende kommandolinje inneholder nøyaktig de samme tekstene, bortsett fra de ledende dobbeltlinjene (bindestrek). De betyr at argumentet er et argument / flagg som må nevnes sammen med en verdi i den gitte typen når programmet kjøres. Å gjøre bruk av argument obligatorisk påkrevd = sant parameter kan brukes i add_argument () -funksjonen som et av de andre argumentene. Som sagt ovenfor, vil det ikke føre til en feil hvis du ikke overholder formatet.
Bruk av korte argumenter
Korte argumenter fungerer på samme måte som de lengre kolleger. Den eneste forskjellen er at det hjelper å spare plass når du bruker en stor mengde kommandolinjer eller når utvikleren ønsker å holde kommandoene ryddige, og organisert så mye som mulig. I det følgende eksemplet viser det hvordan programmet reagerer på begge argumentene på samme måte. Når du bruker de korte argumentene, må du bare bruke en enkelt bindestrek da det er standarden i bransjen.
Betingede argumenter
Betingede argumenter er veldig enkle å bruke som argumenter i tidligere eksempler. Den eneste forskjellen i dette segmentet er å spesifisere handlingsparameteren. Den aksepterer to verdier, ekte butikk, og store_falsk. Hvis handlingsparameter er spesifisert som store_true, tildeles den når ekte flaggargument brukes i programmet med sann boolsk verdi; derav kan den brukes som et betinget argument. Anvendelsene av betingede argumenter er å lage en logisk flyt av utførelsen basert på brukerinngangene. Så brukeren bestemmer hvilken vei de vil ta, og hvordan programmet flyter. De analyserte kommandoene er inne i namespace-objektet, det er derfor det returnerer nøkkelordet namespace () etter at programmet ble kjørt.
parser.add_argument ('- bld', action = 'store_true',hjelp = 'betinget argument')
Spesifisere programmets navn
Fremfor alle eksempler spesifiserer ikke programmets navn. I stedet står det bare skriptfilens navn sammen med listen over aksepterte argumenter. Fordelen med å bruke programnavnet er at det gjør programmet mer brukervennlig og uavhengig av manusens navn. Dette er ganske nyttig hvis flere skriptfiler er involvert i kjøringen. Så det vil ikke forvirre brukeren med tvetydige navn.
Følgende to kommandolinjer må brukes for å få det til. På den første linjen spesifiserer den programmets navn med prog-parameter, mens denne spesielle parameteren kan brukes som en variabel der programnavnet brukes, og når programmet kjøres, erstattes prog-parameteren med verdien som er oppgitt i argumentParser ( ) fungerer sammen med prog-parameter, som betyr "Nucuta App" i dette eksemplet. Videre er det viktig å bruke kommandoen som % (prog) s Ellers vil ikke analyseringen være vellykket.
parser = argparse.ArgumentParser (prog = 'Nucuta App')parser.add_argument ('- bld', help = 'This% (prog) s it')
Hvordan sjekke forholdene og få gjennomføringen til å flyte
Utførelsesflyten er definert med IF ELSE-klausuler. Disse paragrafene styrer gjennomføringsflyten avhengig av tilstanden og dens art. I det følgende eksemplet tildeles den tastede heltallverdien til en variabel, bld, som er i arg-objekt. Deretter sjekkes det mot en forhåndsdefinert verdi for å sjekke tilstanden. I dette eksemplet, hvis den angitte verdien er større enn 10, blir den første setningen utført. Hvis den angitte verdien er lik 10, blir den andre setningen utført, hvis den angitte verdien er mindre enn 10, blir den siste setningen utført. På samme måte kan utførelsesflyten lett styres. Som eksemplet viser, kan du få tilgang til argumentene via objekt som returneres av parse_args () -funksjonen - args.
KONKLUSJON
Med denne guiden er du klar til å analysere alle kommandolinjene i python. Lykke til