Python

Vadnica za razčlenjevanje ukazne vrstice Python

Vadnica za razčlenjevanje ukazne vrstice Python
Razčlenjevanje je postopek analize vrste besedil, da bi ugotovili, kaj naj bi program počel z danimi ukazi. Besedilo je razdrobljeno na majhne koščke, znane kot žetoni, da se ustvari podatkovna struktura, znana prevajalniku ali tolmaču. Rezultat izvedbe je rezultat namena na koncu. Python se pogosto uporablja kot jezik za enostavno razčlenjevanje ukaznih vrstic. Ta priročnik uporablja ta posebni modul, dobavljen s Pythonom, in je znan kot argparse. Posebnost argparse je, da je dokaj enostaven za uporabo, uporabniku prijazen, na voljo s Pythonom in z lahkoto pomaga pri ustvarjanju vmesnikov ukaznih vrstic.

Naslednji vodnik prikazuje, kako uporabljati argparse v Ubuntuju s Python3 in tako zagotoviti, da sta oba na voljo, preden nadaljujete. Če Python3 ni na voljo, ga lahko namestite z naslednjima dvema ukaznima vrsticama:

posodobitev sudo apt-get
sudo apt-get namestite python3.6

Bistvena sintaksa

Namen tega vodnika je opisati bistvene značilnosti argparse in kako uporabiti nekatere njegove možnosti. Argparse za vnos svojih ukazov zahteva Python in beležnico. Ubuntu ima svoj beležnik, znan kot "Urejevalnik besedil", do katerega lahko dostopate prek pomišljaja Ubuntu. Ukazi se izvajajo prek terminala.

  1. Zaženite urejevalnik besedil prek Ubuntu Dash.
  2. Vnesite naslednji dve vrstici kot bistveni kodi. Prva vrstica uvozi modul argparse v delček kode, druga pa ustvari objekt razčlenjevalnika argumentov, ki vsebuje vse informacije, potrebne za razčlenjevanje ukazov na podatkovne tipe Python. uvoz argparse
    razčlenjevalnik = argparse.ArgumentParser ()
  3. Z naslednjim ukazom pretvorite nize argumentov v predmete. Običajno je objekt instanciran in dodeljen spremenljivki, vendar to ni potrebno. razčlenjevalnik.parse_args ()
  4. Program je mogoče izvesti v terminalu Linux prek python3 z naslednjim ukazom. python3 pscript.py

Prikaz opisa aplikacije

Parameter opisa aplikacije mora navesti, čemu aplikacija služi. Ko se ukaz za pomoč uporablja s skriptom python, se prikaže opis aplikacije skupaj z razpoložljivimi zastavicami, ki se uporabljajo v programu.  Za navedbo opisa aplikacije je treba uporabiti naslednjo vrstico.

razčlenjevalnik = argparse.ArgumentParser (description = 'opis aplikacije')

Prikaz opisa na koncu (epilog)

Kot opis se epilog lahko na koncu prikaže s parametrom epiloga. Tako kot opis mora biti tudi on naveden znotraj funkcije argumentParser.

Kako uporabljati argumente

Argumenti so definirani z add_argument () funkcijo. Določa, katere položajne argumente / argumente uporabiti s skriptom python. Program privzeto sprejme zastavico -help kot pozicijski argument, vendar lahko z uporabo zgoraj omenjene funkcije dodamo še več. Obstaja veliko načinov za dodajanje argumentov v aplikacijo.

Enotni položajni argument

Posamezni pozicijski argument zagotavlja, da program sprejme samo en argument. V naslednjem primeru kot argument navede bld; zato se lahko le bld uporablja kot pozicijski argument pri izvajanju programa. Če argument manjka, bo program sprožil napako z opozorilnim sporočilom »premalo argumentov«. Posebnost pozicijskega argumenta je, da ga pri podajanju argumentov programu ni treba navesti v terminalu.

razčlenjevalnik.add_argument ("bld")

Pozicijski argument v določeni vrsti

add_argument () ne samo en argument, ampak tudi več argumentov, kot je razvidno iz naslednjega primera. Če je na voljo več argumentov, jih je treba oblikovati, kot sledi. Prvi argument določa ime pozicijskega argumenta, drugi je njegov tip, kar pomeni, da je vrednost vrednosti sprejeta kot argument za program, zadnji pa za opis, ki se prikaže samo ob uporabi zastave za pomoč.

Na naslednjem posnetku zaslona je prikazano, kako program noče sprejeti kakršne koli ne-integralne vrednosti kot pozicijski argument. Zdaj lahko tukaj oddate samo celoštevilčno vrednost.

razčlenjevalnik.add_argument ('bld', type = int,
help = "potrebna je celoštevilčna vrednost")

Neobvezni položajni argument v določeni vrsti

Naslednja ukazna vrstica je enaka zgornji, le da pozicijski argument neobvezen s parametrom nargs; zato ga lahko uporabnik pri izvajanju programa izpusti. Če pa je bil argument naveden, mora biti v pravilnem podatkovnem tipu, sicer ne bo nadaljeval razčlenjevanja kot običajno.

razčlenjevalnik.add_argument ('bld', type = int, nargs = '?",
help = 'To polje je za neobvezno celoštevilsko vrednost')

Neobvezen argument v določeni vrsti

Razlike med argumentom in pozicijskim argumentom je pozicijski argument ni treba omenjati, medtem ko je argument pri izvajanju programa treba omeniti kot zastavico skupaj s svojo vrednostjo. Naslednja ukazna vrstica vsebuje popolnoma ista besedila, razen vodilnih dvojnih vrstic (vezaji). Pomenijo, da je argument argument / zastava, ki jo je treba med izvajanjem programa omeniti skupaj z vrednostjo v danem tipu. Da bo uporaba argumenta obvezna obvezno = True Parameter lahko uporabite v funkciji add_argument () kot enega od drugih argumentov. Kot rečeno zgoraj, bo neupoštevanje oblike povzročilo napako.

Uporaba kratkih argumentov

Kratki argumenti delujejo enako kot njegovi daljši kolegi. Edina razlika je v tem, da prihranite prostor pri uporabi velike količine ukaznih vrstic ali kadar razvijalec želi ukaze urejati in organizirati v največji možni meri. V naslednjem primeru je prikazano, kako se program na oba argumenta odziva enako. Ko uporabljate kratke argumente, uporabite samo en vezaj, saj je to standard v panogi.

Pogojni argumenti

Pogojne argumente je zelo enostavno uporabiti kot argumente v prejšnjih primerih. Edina razlika v tem segmentu je določitev parametra dejanja. Sprejema dve vrednosti, store_true, in store_false. Če je parameter dejanja podan kot store_true, se vsakič, ko se v programu uporablja argument zastavice, dodeli z resnično logično vrednostjo; zato ga lahko uporabimo kot pogojni argument. Aplikacije pogojnih argumentov so, da na podlagi uporabniških vložkov izvedejo logični tok izvedbe. Torej se uporabnik odloči, po kateri poti želi iti in kako teče program. Razčlenjeni ukazi so znotraj predmeta imenskega prostora, zato po zagonu programa vrne ključno besedo namespace ().

razčlenjevalnik.add_argument ('- bld', action = 'store_true',
pomoč = 'pogojni argument')

Določitev imena programa

Predvsem primeri ne določajo imena programa. Namesto tega samo navede ime datoteke skripta skupaj s seznamom sprejetih argumentov. Prednost uporabe imena programa je, da program naredi uporabniku bolj prijazen in neodvisen od imena skripta. To je zelo koristno, če je pri izvedbi vključenih več skriptnih datotek. Tako uporabnika ne bo zamenjal z dvoumnimi imeni.

Za to je treba uporabiti naslednji dve ukazni vrstici. V prvi vrstici določa ime programa s parametrom prog, medtem ko se ta parameter lahko uporablja kot spremenljivka, kjer se uporablja ime programa, nato pa se pri izvajanju programa parameter paramet nadomesti z vrednostjo, navedeno v argumentParser ( ) deluje skupaj s parametrom prog, kar v tem primeru pomeni »Nucuta App«. Poleg tega je pomembno, da ukaz uporabite kot % (prog) s sicer razčlenitev ne bo uspešna.

razčlenjevalnik = argparse.ArgumentParser (prog = 'Nucuta App')
razčlenjevalnik.add_argument ('- bld', help = 'Ta% (prog) s to')

Kako preveriti pogoje in narediti potek izvršitve

Tok izvajanja je definiran s klavzulami IF ELSE. Te klavzule vodijo postopek izvrševanja, odvisno od stanja in njegove narave. V naslednjem primeru je vtipkana celoštevilčna vrednost dodeljena spremenljivki bld, ki je v objektu arg. Nato se preveri glede na vnaprej določeno vrednost, da se preveri njeno stanje. V tem primeru, če je vnesena vrednost večja od 10, se izvede prvi stavek, če je vnesena vrednost enaka 10, se izvede drugi stavek, če je vnesena vrednost manjša od 10, se izvede zadnji stavek. Prav tako lahko postopek izvajanja vodimo z lahkoto. Kot prikazuje primer, je do argumentov mogoče dostopati prek predmeta, ki ga vrne funkcija parse_args () - args.

ZAKLJUČEK

S tem vodnikom lahko začnete razčlenjevati vse vrstice ukazov v pythonu.  Vso srečo

5 najboljših arkadnih iger za Linux
Dandanes so računalniki resni stroji, ki se uporabljajo za igre na srečo. Če ne boste mogli dobiti novega visokega rezultata, boste vedeli, kaj mislim...
Bitka za Wesnoth 1.13.6 Razvoj izdan
Bitka za Wesnoth 1.13.6, ki je izšel prejšnji mesec, je šesta razvojna izdaja v 1.13.x series in prinaša številne izboljšave, predvsem uporabniški vme...
Kako namestiti League Of Legends na Ubuntu 14.04
Če ste ljubitelj League of Legends, je to priložnost, da preizkusite League of Legends. Upoštevajte, da LOL podpira PlayOnLinux, če uporabljate Linux....