Zugriff auf Command-Line Arguments mit sys.argv
Um auf die Command-Line Arguments in einem Python-Skript zuzugreifen, kannst Du das `sys.argv`-Attribut des `sys`-Moduls verwenden. `sys.argv` ist eine Liste, die das Skript selbst und alle übergebenen Argumente enthält.
import sys
print("Anzahl der Argumente:", len(sys.argv))
print("Argumente:", sys.argv)
for i, arg in enumerate(sys.argv):
print(f"Argument {i}: {arg}")
```
Speichere dieses Skript als `args.py` und führe es mit verschiedenen Argumenten aus:
```
$ python args.py arg1 arg2 arg3
argparse-Modul für erweiterte Argumentverarbeitung
Für komplexere Anwendungsfälle bietet das `argparse`-Modul Funktionen zur Verarbeitung von Command-Line Arguments. Es ermöglicht Dir, die erwarteten Argumente und deren Typen zu definieren, automatische Hilfe- und Fehlermeldungen zu generieren und vieles mehr.
import argparse
parser = argparse.ArgumentParser(description="Ein einfaches Skript zum Verarbeiten von Command-Line Arguments.")
parser.add_argument("-n", "--name", type=str, help="Dein Name")
parser.add_argument("-a", "--age", type=int, help="Dein Alter")
args = parser.parse_args()
if args.name:
print(f"Hallo, {args.name}!")
else:
print("Hallo, unbekannte Person!")
if args.age:
print(f"Du bist {args.age} Jahre alt.")
else:
print("Dein Alter ist unbekannt.")
Speichere dieses Skript als `argparse_example.py` und führe es mit verschiedenen Argumenten aus:
$ python argparse_example.py --name Max --age 25
Anwendungsfälle für Command-Line Arguments
Command-Line Arguments sind nützlich, um Skripten flexible Eingaben und Konfigurationen zu ermöglichen. Einige Anwendungsfälle sind:
– Auswahl von Dateien oder Verzeichnissen: Skripte können Argumente verwenden, um Dateien oder Verzeichnisse zu verarbeiten, ohne dass der Benutzer sie im Code ändern muss.
– Steuerung von Programmverhalten: Du kannst Argumente verwenden, um Optionen zu aktivieren oder zu deaktivieren, zum Beispiel, um Debug-Informationen auszugeben oder alternative Verarbeitungswege auszuwählen.
– Übergabe von Parametern: Skripte können Argumente verwenden, um benutzerdefinierte Parameter, wie Schwellenwerte, Faktoren oder Grenzwerte, entgegenzunehmen.
Fazit
Die Verwendung von Command-Line Arguments in Python ermöglicht es Dir, Skripte flexibel und anpassungsfähig zu gestalten. Durch das Verständnis von `sys.argv` und das `argparse`-Modul kannst Du Deine Skripte so entwickeln, dass sie leicht von anderen Benutzern verwendet und an verschiedene Anforderungen angepasst werden können.