Python Commandoregel Argumenten

Python-opdrachtregelargumenten zijn invoerparameters die aan het script worden doorgegeven bij de uitvoering ervan. Bijna alle programmeertalen bieden ondersteuning voor opdrachtregelargumenten. Dan hebben we ook opdrachtregelopties om specifieke opties voor het programma in te stellen.

Python-opdrachtregelargumenten

Er zijn veel opties om Python-opdrachtregelargumenten te lezen. De drie meest voorkomende zijn:

  1. Python sys.argv
  2. Python getopt-module
  3. Python argparse-module

Laten we een eenvoudig programma bekijken om te leren hoe je Python-opdrachtregelargumenten kunt lezen en gebruiken.

Python-sys-module

De Python-sys-module slaat de opdrachtregelargumenten op in een lijst, die we kunnen openen met behulp van sys.argv. Dit is een zeer nuttige en eenvoudige manier om opdrachtregelargumenten als tekenreeks te lezen. Laten we een eenvoudig voorbeeld bekijken om opdrachtregelargumenten te lezen en af te drukken met behulp van de Python-sys-module.

import sys

print(type(sys.argv))
print('The command line arguments are:')
for i in sys.argv:
    print(i)

Onderstaande afbeelding illustreert de uitvoer van een voorbeeldrun van het bovenstaande programma. Er zijn veel andere nuttige functies in de sys module, lees ze in detail op python sys module.

Python getopt module

De Python getopt module werkt heel vergelijkbaar als de C getopt() functie voor het parsen van command-line parameters. De Python getopt module is nuttig voor het parsen van command-line argumenten waar we willen dat de gebruiker ook enkele opties invoert. Laten we naar een eenvoudig voorbeeld kijken om dit te begrijpen.

import getopt
import sys

argv = sys.argv[1:]
try:
    opts, args = getopt.getopt(argv, 'hm:d', ['help', 'my_file='])
    print(opts)
    print(args)
except getopt.GetoptError:
    # Print een bericht of doe iets nuttigs
    print('Something went wrong!')
    sys.exit(2)

Het bovenstaande voorbeeld is heel eenvoudig, maar we kunnen het gemakkelijk uitbreiden om verschillende dingen te doen. Als bijvoorbeeld de help-optie wordt doorgegeven, druk dan een gebruikersvriendelijk bericht af en sluit af. Hier zal de getopt module automatisch de optiewaarde parsen en ze toewijzen. Onderstaande afbeelding toont een voorbeeldrun. Om meer te leren, lees python getopt module.

Python argparse module

De Python argparse-module is de voorkeursmethode om opdrachtregelargumenten te parsen. Het biedt veel opties zoals positionele argumenten, standaardwaarde voor argumenten, helpbericht, specificatie van het gegevenstype van het argument, enzovoort. In de meest eenvoudige vorm kunnen we het als volgt gebruiken.

import argparse

parser = argparse.ArgumentParser()
parser.parse_args()

Hieronder staat de uitvoer van een snelle uitvoering van het bovenstaande script. De Python argparse-module biedt veel functies, je zou er meer over moeten lezen in de Python argparse-tutorial voor een duidelijk begrip. Dat is alles voor verschillende opties om opdrachtregelargumenten in Python te lezen en te parsen, je zou moeten beslissen welke het beste past bij jouw specifieke vereisten en het dan gebruiken. Referenties:

Source:
https://www.digitalocean.com/community/tutorials/python-command-line-arguments