Python-Befehlszeilenargumente

Python-Befehlszeilenargumente sind Eingabeparameter, die dem Skript übergeben werden, wenn sie ausgeführt werden. Fast alle Programmiersprachen bieten Unterstützung für Befehlszeilenargumente. Dann haben wir auch Befehlszeilenoptionen, um bestimmte Optionen für das Programm festzulegen.

Python-Befehlszeilenargumente

Es gibt viele Möglichkeiten, Python-Befehlszeilenargumente zu lesen. Die drei häufigsten sind:

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

Lassen Sie uns ein einfaches Programm durchgehen, um zu lernen, wie man Python-Befehlszeilenargumente liest und verwendet.

Python sys-Modul

Das Python-sys-Modul speichert die Befehlszeilenargumente in einer Liste, auf die wir über sys.argv zugreifen können. Dies ist eine sehr nützliche und einfache Möglichkeit, Befehlszeilenargumente als Zeichenfolge zu lesen. Lassen Sie uns ein einfaches Beispiel betrachten, um Befehlszeilenargumente mit dem Python-sys-Modul zu lesen und zu drucken.

import sys

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

Untenstehendes Bild veranschaulicht die Ausgabe eines Beispiellaufs des oben genannten Programms. Es gibt viele andere nützliche Funktionen im sys-Modul. Lesen Sie sie im Detail unter Python sys Modul.

Python getopt Modul

Das Python getopt Modul funktioniert ähnlich wie die C-Funktion getopt() zum Parsen von Befehlszeilenparametern. Das Python getopt Modul eignet sich gut zum Analysieren von Befehlszeilenargumenten, bei denen der Benutzer auch einige Optionen eingeben soll. Schauen wir uns dazu ein einfaches Beispiel an.

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:
    # Geben Sie eine Nachricht aus oder tun Sie etwas Nützliches
    print('Something went wrong!')
    sys.exit(2)

Das obige Beispiel ist sehr einfach, aber wir können es leicht erweitern, um verschiedene Dinge zu tun. Wenn beispielsweise die Hilfeoption übergeben wird, können Sie eine benutzerfreundliche Nachricht ausgeben und das Programm beenden. Das getopt-Modul analysiert automatisch die Optionswerte und ordnet sie zu. Untenstehendes Bild zeigt einen Beispiellauf. Um mehr zu erfahren, lesen Sie Python getopt Modul.

Python argparse Modul

Das Python argparse-Modul ist der bevorzugte Weg, um Befehlszeilenargumente zu analysieren. Es bietet viele Optionen wie positionale Argumente, Standardwert für Argumente, Hilfemeldung, Angabe des Datentyps des Arguments usw. In der einfachsten Form können wir es wie folgt verwenden.

import argparse

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

Unten ist die Ausgabe eines schnellen Laufs des obigen Skripts. Das Python argparse-Modul bietet viele Funktionen, über die Sie in einem Tutorial zur Python-Argumentanalyse lesen sollten, um ein klares Verständnis zu erhalten. Das ist alles für verschiedene Optionen zum Lesen und Analysieren von Befehlszeilenargumenten in Python. Sie sollten entscheiden, welche für Ihre spezifischen Anforderungen geeignet ist, und sie dann verwenden. Referenzen:

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