logo

Argumenti ukazne vrstice v Pythonu

Argumenti, ki so podani za imenom programa v lupini ukazne vrstice operacijskega sistema, so znani kot Argumenti ukazne vrstice . Python ponuja različne načine obravnavanja teh vrst argumentov. Tri najpogostejše so:

Uporaba sys.argv

Modul sys nudi funkcije in spremenljivke, ki se uporabljajo za upravljanje različnih delov izvajalnega okolja Python. Ta modul omogoča dostop do nekaterih spremenljivk, ki jih uporablja ali vzdržuje tolmač, in do funkcij, ki močno vplivajo na tolmač.
Ena taka spremenljivka je sys.argv, ki je preprosta struktura seznama. Njegov glavni namen je:



  • Je seznam argumentov ukazne vrstice.
  • len(sys.argv) zagotavlja število argumentov ukazne vrstice.
  • sys.argv[0] je ime trenutnega skripta Python.

primer: Recimo, da obstaja skript Python za seštevanje dveh števil in sta števili posredovani kot argumenta ukazne vrstice.

Python3








# Python program to demonstrate> # command line arguments> import> sys> # total arguments> n>=> len>(sys.argv)> print>(>'Total arguments passed:'>, n)> # Arguments passed> print>(>' Name of Python script:'>, sys.argv[>0>])> print>(>' Arguments passed:'>, end>=> ' '>)> for> i>in> range>(>1>, n):> >print>(sys.argv[i], end>=> ' '>)> > # Addition of numbers> Sum> => 0> # Using argparse module> for> i>in> range>(>1>, n):> >Sum> +>=> int>(sys.argv[i])> > print>(>' Result:'>,>Sum>)>

>

>

Izhod:

argumenti-ukazne-vrstice python

Uporaba modula getopt

Python modul getopt je podobna funkciji getopt() v C. Za razliko od modula sys modul getopt razširja ločevanje vhodnega niza s preverjanjem parametrov. Omogoča kratke in dolge možnosti, vključno z dodelitvijo vrednosti. Vendar pa ta modul za pravilno obdelavo vhodnih podatkov zahteva uporabo modula sys. Za uporabo modula getopt je potrebno odstraniti prvi element s seznama argumentov ukazne vrstice.

Sintaksa: getopt.getopt(argi, možnosti, [dolge_možnosti])
Parametri:
argumenti: Seznam argumentov, ki jih je treba posredovati.
opcije: Niz črk možnosti, ki jih želi skript prepoznati. Možnostim, ki zahtevajo argument, mora slediti dvopičje (:).
dolge_možnosti: Seznam nizov z imenom dolgih možnosti. Možnostim, ki zahtevajo argumente, mora slediti znak enačaja (=).
Vrsta vračila: Vrne vrednost, sestavljeno iz dveh elementov: prvi je seznam parov (možnost, vrednost). Drugi je seznam programskih argumentov, ki ostanejo po odstranitvi seznama možnosti.

objektivna java

primer:

Python3




# Python program to demonstrate> # command line arguments> import> getopt, sys> # Remove 1st argument from the> # list of command line arguments> argumentList>=> sys.argv[>1>:]> # Options> options>=> 'hmo:'> # Long options> long_options>=> [>'Help'>,>'My_file'>,>'Output='>]> try>:> ># Parsing argument> >arguments, values>=> getopt.getopt(argumentList, options, long_options)> > ># checking each argument> >for> currentArgument, currentValue>in> arguments:> >if> currentArgument>in> (>'-h'>,>'--Help'>):> >print> (>'Displaying Help'>)> > >elif> currentArgument>in> (>'-m'>,>'--My_file'>):> >print> (>'Displaying file_name:'>, sys.argv[>0>])> > >elif> currentArgument>in> (>'-o'>,>'--Output'>):> >print> ((>'Enabling special output mode (% s)'>)>%> (currentValue))> > except> getopt.error as err:> ># output error, and return with an error code> >print> (>str>(err))>

>

>

Izhod:

argumenti-ukazne-vrstice python

Uporaba modula argparse

Uporaba modula argparse je boljša možnost od zgornjih dveh možnosti, saj ponuja veliko možnosti, kot so pozicijski argumenti, privzeta vrednost za argumente, sporočilo pomoči, določanje vrste podatkov argumenta itd.

Opomba: Kot privzeti izbirni argument vključuje -h skupaj z dolgo različico –help.

Primer 1: Osnovna uporaba modula argparse.

Python3




# Python program to demonstrate> # command line arguments> import> argparse> # Initialize parser> parser>=> argparse.ArgumentParser()> parser.parse_args()>

>

>

Izhod:

css poravnava slik

argumenti-ukazne-vrstice python


Primer 2: Dodajanje opisa v sporočilo pomoči.

Python3




# Python program to demonstrate> # command line arguments> import> argparse> msg>=> 'Adding description'> # Initialize parser> parser>=> argparse.ArgumentParser(description>=> msg)> parser.parse_args()>

>

>

Izhod:

argumenti-ukazne-vrstice python


Primer 3: Določitev neobvezne vrednosti

Python3




# Python program to demonstrate> # command line arguments> import> argparse> # Initialize parser> parser>=> argparse.ArgumentParser()> # Adding optional argument> parser.add_argument(>'-o'>,>'--Output'>,>help> => 'Show Output'>)> # Read arguments from command line> args>=> parser.parse_args()> if> args.Output:> >print>(>'Displaying Output as: % s'> %> args.Output)>

>

nastavite javo
>

Izhod:

argumenti-ukazne-vrstice python