Lesen von Kommandozeilenargumenten

Python:
Lesen von Kommandozeilenargumenten

Anleitung:

Um Befehlszeilenargumente in Python zu lesen, nutzt du das sys Modul. Hier ein simples Beispiel:

import sys

def main():
    # Prüfe, ob Argumente vorhanden sind
    if len(sys.argv) > 1:
        print(f"Hallo, {sys.argv[1]}!")
    else:
        print("Hallo, Welt!")

if __name__ == "__main__":
    main()

Wenn du dein Programm mit python script.py Max ausführst, ist die Ausgabe:

Hallo, Max!

Tiefergehende Informationen:

Das Modul sys.argv ist der klassische Weg, Befehlszeilenargumente in Python zu handhaben. Historisch gesehen, ist es Teil von Python seit seinen frühesten Versionen. Eine moderne Alternative ist das argparse Modul, das komplexere Parsing-Aufgaben und automatische Hilfe-Nachrichten unterstützt. Für einfache Zwecke genügt jedoch sys.argv.

Eine wichtige Sache beim Umgang mit sys.argv ist, dass alle Argumente standardmäßig als Strings behandelt werden. Wenn du andere Datentypen brauchst, musst du sie konvertieren.

Hier ist ein Beispiel, wie argparse verwendet werden könnte:

import argparse

def parse_arguments():
    parser = argparse.ArgumentParser(description='Sage Hallo.')
    parser.add_argument('-n', '--name', default='Welt', help='Dein Name')
    return parser.parse_args()

def main():
    args = parse_arguments()
    print(f"Hallo, {args.name}!")

if __name__ == "__main__":
    main()

Starte dieses Skript mit python script.py -n Max, um die Ausgabe:

Hallo, Max!

zu erhalten.

Siehe auch: