Anmelden
Anmelden

Verwendung von time.sleep() in Python

Verwendung von time.sleep() in Python
Hostman Team
Technischer Redakteur
Programmiersprache Python
14.10.2025
Reading time: 8 min

Manchmal muss ein Programm eine kurze Pause einlegen — zum Beispiel, um auf Daten zu warten, dem Benutzer Zeit zur Eingabe zu geben oder die Systemlast zu verringern. Eine der einfachsten Möglichkeiten, dies in Python zu erreichen, ist die Funktion time.sleep(), die die Programmausführung für ein bestimmtes Zeitintervall anhält.

In diesem Artikel sehen wir uns an, wie time.sleep() in Python funktioniert, welche Besonderheiten und Alternativen es gibt und welche typischen Fehler auftreten können. Außerdem besprechen wir, wann der Einsatz in mehrthreadigen und asynchronen Programmen sinnvoll ist — und wann besser asyncio.sleep() oder andere Warte-Mechanismen verwendet werden sollten.

Was ist die Funktion sleep() in Python?

Die Funktion sleep() wurde in die Standardbibliothek von Python aufgenommen, um das Erstellen von Pausen im Code zu vereinfachen. Sie befindet sich im Modul time und wird als time.sleep() aufgerufen. Damit kann die Programmausführung für eine bestimmte Anzahl von Sekunden angehalten werden.

In der Praxis ist sleep() nützlich für kurze Pausen in Testumgebungen, Verzögerungen zwischen API-Anfragen oder Zeitintervalle beim Senden von Nachrichten. Man darf sie jedoch nicht mit Systemfunktionen wie Thread-Synchronisation oder präzisem Timing verwechseln — dafür gibt es spezialisierte Werkzeuge.

Wie time.sleep() funktioniert

Die Funktion time.sleep() pausiert den aktuellen Thread für die angegebene Anzahl von Sekunden. In einem mehrthreadigen Programm laufen andere Threads weiter, während der Thread, in dem time.sleep() aufgerufen wurde, „eingefroren“ bleibt.

Wichtig: time.sleep() blockiert die Codeausführung an dieser Stelle — alle nachfolgenden Operationen werden verzögert. Wenn man das ignoriert, kann dies zu Leistungseinbußen oder einer eingefrorenen Benutzeroberfläche in Desktop-Anwendungen führen.

Wann time.sleep() verwendet wird

Die Funktion wird am häufigsten in Tests und Debugging-Szenarien eingesetzt, wenn eine kurze Verzögerung erforderlich ist — zum Beispiel, um die Antwort einer API zu überprüfen oder auf eine Serverreaktion zu warten. Außerdem wird sie genutzt, um Skripte schrittweise auszuführen, dem Benutzer Zeit zum Lesen oder Eingeben zu geben oder Prozesse in Demos zu simulieren.

Bei externen Diensten hilft time.sleep(), Sperren oder Rate-Limits durch zu häufige Anfragen zu vermeiden. Es ist jedoch nicht die einzige Möglichkeit, den Code zu verlangsamen — im Folgenden betrachten wir einige Alternativen.

Verwendung von time.sleep() in Python

Die Nutzung von time.sleep() ist einfach und selbst für Einsteiger leicht zu erlernen. Dennoch gibt es einige Feinheiten, die sich auf Performance und Debugging auswirken können.

Grundsyntax

Zuerst muss das Modul time importiert werden:

import time
time.sleep(5)

In diesem Beispiel pausiert das Programm für 5 Sekunden. Der übergebene Wert kann eine ganze Zahl oder ein Gleitkommawert sein — so lassen sich auch Bruchteile von Sekunden realisieren.

Syntax:

time.sleep(seconds)

Die Funktion gibt keinen Rückgabewert zurück. Das bedeutet, man kann nicht genau messen, wie präzise die Pause war — der Thread wird einfach für die angegebene Zeit angehalten.

Beispiel: Ausführungsverzögerung

Ein kurzes Beispiel mit Nachrichten, die im Abstand von 2 Sekunden ausgegeben werden:

import time
print("First message")
time.sleep(2)
print("Second message")
time.sleep(2)
print("Third message")

Beim Ausführen dieses Skripts sieht der Benutzer zwischen jeder Nachricht eine Pause von 2 Sekunden — genau so funktioniert eine Verzögerung mit time.sleep(2).

Parameter von time.sleep()

Die Funktion akzeptiert nur einen Parameter, der jedoch entweder ein Integer oder ein Float sein kann. Das bietet Flexibilität bei der Implementierung von Wartezeiten.

Übergabe in Sekunden

In den meisten Fällen wird eine ganze Zahl übergeben:

time.sleep(10)

Das Skript pausiert für 10 Sekunden — ideal für längere Pausen oder zeitgesteuerte API-Anfragen.

Verwendung von Sekundenbruchteilen (Millisekunden)

Manchmal reicht eine kurze Pause von wenigen Millisekunden. Das geht mit einem Gleitkommawert:

time.sleep(0.5)

Dies erzeugt eine Pause von einer halben Sekunde. Beachte jedoch, dass durch Betriebssystem- und Python-Timer-Limits die tatsächliche Dauer leicht höher sein kann. Für Echtzeitsysteme mit hoher Präzision sollten spezialisierte Timer verwendet werden.

Alternative Möglichkeiten für Pausen in Python

Obwohl time.sleep() am beliebtesten und am einfachsten ist, gibt es alternative Ansätze, die bei externen Ereignissen oder mehreren Threads besser geeignet sind.

1. Warten mit input()

Die einfachste Art, das Programm anzuhalten, ist input(). Es stoppt die Ausführung, bis der Benutzer Enter drückt oder eine Eingabe macht.

print("Press Enter to continue...")
input()
print("Resuming program execution")

Technisch gesehen ist das keine zeitgesteuerte Pause, sondern ein Eingabe-Warten. Diese Methode ist selten in automatisierten Skripten nützlich, kann aber in Debugging- oder Konsolenprogrammen hilfreich sein.

2. Verwendung von threading.Event()

In mehrthreadigen Programmen kann ein Synchronisationsobjekt wie threading.Event() eingesetzt werden, um Threads zu blockieren, bis ein Signal empfangen wird.

import threading
event = threading.Event()

def worker():
    print("Starting work in thread")
    event.wait()
    print("Event received, resuming work")

thread = threading.Thread(target=worker)
thread.start()

import time
time.sleep(3)
event.set()

Hier bleibt der Thread blockiert, bis event.set() aufgerufen wird. Das ermöglicht flexible Kontrolle, da der Thread sofort fortgesetzt werden kann, ohne die volle Zeit abzuwarten.

3. Asynchrone Programme mit asyncio.sleep()

In asynchronem Python-Code (Modul asyncio) wird asyncio.sleep() verwendet. Im Gegensatz zu time.sleep() blockiert es nicht den gesamten Thread, sondern nur die aktuelle Coroutine, während andere Tasks weiterlaufen.

import asyncio

async def main():
    print("Start async work")
    await asyncio.sleep(2)
    print("2 seconds passed, resuming")

asyncio.run(main())

Das ist besonders nützlich, wenn mehrere asynchrone Funktionen parallel laufen sollen. Würde man time.sleep() in diesem Kontext verwenden, würde es die gesamte Event Loop blockieren.

Häufige Probleme mit time.sleep()

Obwohl time.sleep() einfach ist, kann unsachgemäßer Gebrauch zu unerwarteten Blockaden führen. Deshalb sollte man genau verstehen, wie sie den Programmablauf beeinflusst.

Blockierung des Hauptthreads

time.sleep() blockiert den Thread, in dem sie aufgerufen wird. fWenn sie im Hauptthread einer GUI-Anwendung (z. B. Tkinter oder PyQt) verwendet wird, friert die Oberfläche ein.

💡 Tipp:
Verwende time.sleep() nur in Neben-Threads, oder nutze asyncio.sleep() für nicht-blockierende Verzögerungen. In grafischen Anwendungen sind Timer (z. B. QTimer, after()) besser geeignet.

Verwendung in mehrthreadigem und asynchronem Code

In mehrthreadigem Code kann time.sleep() unabhängig in jedem Thread aufgerufen werden, aber beachte: Sie gibt den Global Interpreter Lock (GIL) nicht automatisch frei.
Ob andere Threads laufen können, hängt vom Thread-Scheduler des Betriebssystems ab.

In asynchronem Code sollte time.sleep() nicht innerhalb der Event Loop verwendet werden, da sie diese blockiert. Verwende stattdessen asyncio.sleep(), das den Scheduler weiterarbeiten lässt.

Praxisbeispiel: API-Abfrage mit Pausen

Angenommen, du schreibst ein Skript, das eine API regelmäßig abfragt — aber laut API-Regeln nicht öfter als alle 30 Sekunden. Eine einfache Lösung mit time.sleep():

import time
def poll_api():
    print("Making API request...")
def main():
    while True:
        poll_api()
        time.sleep(30)
if __name__ == "__main__":
    main()

Nach jeder Anfrage pausiert das Skript 30 Sekunden. So werden Rate-Limits eingehalten.

Asynchrone Variante:

import asyncio
async def poll_api():
    print("Making API request...")
async def main():
    while True:
        await poll_api()
        await asyncio.sleep(30)
if __name__ == "__main__":
    asyncio.run(main())

Diese Version blockiert das Programm nicht komplett — andere Tasks können parallel laufen. Das ist skalierbarer und effizienter.

Fazit

Das Organisieren von Pausen und Verzögerungen ist ein wichtiger Bestandteil der Python-Entwicklung. time.sleep() ist dabei das naheliegendste Werkzeug, doch die Wahl zwischen time.sleep(), asyncio.sleep() und anderen Methoden hängt von der Programmarchitektur ab.

Empfehlungen:

  • Verwende time.sleep() für kurze Verzögerungen, Tests oder Demo-Ausgaben.

  • Vermeide Blockierungen im Hauptthread von GUI-Anwendungen.

  • In asynchronem Code: nutze asyncio.sleep() statt time.sleep().

  • In mehrthreadigen Programmen: beachte, dass nur der aktuelle Thread pausiert.

  • Für Ereignis- oder Benutzereingaben können threading.Event() oder input() geeigneter sein.
Programmiersprache Python
14.10.2025
Reading time: 8 min

Ähnlich

Programmiersprache Python

HTTP-Anfragen verstehen: Aufbau, Methoden und Beispiele

HTTP ist der Schlüssel zur Kommunikation im Internet. Die Methoden des HTTP-Protokolls ermöglichen es Clients, Anfragen an Server zu senden, und Servern, Antworten zurückzugeben. Jede Website im World Wide Web verwendet HTTP-Anfragen. Daher ist es wichtig, sie zu verstehen.  Dieser Artikel behandelt das Konzept von HTTP-Requests, ihren Aufbau, gängige Methoden und praktische Beispiele. Das hilft dabei, die Funktionsweise des Webs besser zu verstehen. Was ist eine HTTP-Request? Eine HTTP-Request ist eine Nachricht, in der ein Client – z. B. ein Webbrowser – den auf dem Server befindlichen Host um eine bestimmte Ressource bittet. Clients verwenden URLs in HTTP-Requests, die die Ressourcen angeben, auf die sie zugreifen möchten. Bestandteile einer HTTP-Request Jede HTTP-Request besteht aus drei Hauptkomponenten: Request Line Headers Message Body Request Line Die Request Line ist die erste Zeile einer HTTP-Anfrage. Sie initiiert eine Aktion auf dem Server. Die Request Line zeigt außerdem an, welche HTTP-Methode und welche HTTP-Version der Client verwendet. Zusätzlich zur HTTP-Methode enthält sie eine URI oder URL. Beispiel einer Request Line: GET /index.html HTTP/1.1 Headers Die Headers folgen direkt auf die Request Line. Sie liefern zusätzliche Informationen vom Client an den Server. Headers beinhalten Angaben wie Hostname, User-Agent, bevorzugte Sprache und mehr. Der Server nutzt diese Informationen, um Browser- und Betriebssystemversion des Clients zu identifizieren. HTTP-Headers sind case-sensitive, bestehen aus einem Namen, gefolgt von einem Doppelpunkt und einem Wert. Beispiel für HTTP-Request-Headers: Host: example.com User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36 Accept: application/json, text/plain, */* Accept-Language: en-US,en;q=0.9 Accept-Encoding: gzip, deflate, br Connection: keep-alive Message Body Der Message Body einer HTTP-Request wird verwendet, um Daten an den Server zu senden. Er ist optional – nicht jede HTTP-Request enthält einen Body. Ob er verwendet wird, hängt von der HTTP-Methode ab. Requests mit Body nutzen typischerweise POST, um Informationen zu übertragen. Der Server nutzt den Body, um die gesendeten Daten zu verarbeiten. Häufige HTTP-Methoden Eine HTTP-Request stellt eine Verbindung zwischen Client und Server her. Gründe dafür können sein: eine Ressource abzurufen neue Daten zu senden bestehende Daten zu ändern Daten zu löschen Die wichtigsten und am häufigsten verwendeten Methoden sind: GET – Ressourcen abrufen Die häufigste Verwendung von HTTP ist das Abrufen von Daten vom Server. Beim Aufrufen einer Website sendet der Browser eine GET-Request, um den Inhalt zu laden. Eigenschaften: cacheable safe idempotent GET ist nur zum Lesen gedacht — der Serverzustand wird nicht verändert. POST – Daten senden Um Daten an den Server zu übermitteln (z. B. beim Absenden eines Formulars), wird POST verwendet. Der Body enthält die Daten, die der Server verarbeiten soll. Mehrere identische POST-Requests können zu mehreren Ressourcen auf dem Server führen. PUT – Ressourcen aktualisieren PUT ähnelt POST, mit einem zentralen Unterschied: POST = neue Daten senden PUT = bestehende Daten aktualisieren Der Client muss die vollständige neue Repräsentation im Body angeben. PUT ist idempotent – mehrere gleiche PUT-Requests führen zum gleichen Ergebnis. DELETE – Ressourcen löschen DELETE weist den Server an, eine Ressource zu entfernen. Wenn der Server erfolgreich löscht, sendet er eine Bestätigung zurück. Auch DELETE ist idempotent. Was ist eine HTTP-Response? Wenn der Server auf eine HTTP-Request antwortet, nennt man das eine HTTP-Response.Sie besteht ebenfalls aus drei Teilen: Status Line Headers Message Body Status Line Sie zeigt: HTTP-Version Statuscode Statusnachricht Headers Sie enthalten Informationen wie: Datum und Uhrzeit der Antwort Content-Type Server-Details Caching-Regeln Body Der Body enthält die eigentliche Antwort, z. B.: HTML JSON XML Bilder Dateien Statuscodes und ihre Bedeutung HTTP-Statuscodes zeigen an, wie der Server die Anfrage verarbeitet hat. Sie bestehen aus drei Ziffern. Die erste Ziffer beschreibt die Kategorie: Code-Gruppe Bedeutung 1xx Informational – Anfrage wird weiter verarbeitet 2xx Success – erfolgreich verarbeitet 3xx Redirect – weitere Schritte nötig 4xx Client Error – Problem auf Client-Seite 5xx Server Error – Fehler bei der Serververarbeitung HTTP-Headers und ihre Bedeutung Headers sind wichtig für die Kommunikation im Web. Sie unterstützen: Host-Identifikation Wichtig bei Servern mit mehreren Domains. Caching Headers wie Cache-Control oder Expires steuern, wie lange eine Ressource gespeichert bleibt. Cookie-Management Set-Cookie und Cookie verwalten Sessions und Benutzerzustände. Sicherheit z. B. Authorization, Content-Security-Policy. Response-Kontrolle Headers vermitteln Erfolg oder Fehler der Anfrage. Praktische Beispiele für HTTP-Requests Alle Beispiele verwenden Python und die Bibliothek requests. GET import requests response = requests.get("https://api.example.com/data",                         params={"param1": "value1", "param2": "value2"}) print(response.status_code) print(response.json()) POST import requests url = "https://api.example.com/users" data = {     "username": "newuser",     "email": "newuser@example.com",     "password": "securepassword" } response = requests.post(url, json=data) if response.status_code == 201:     print("User created successfully:", response.json()) else:     print("Error:", response.status_code, response.text) PUT import requests url = "https://api.example.com/users/123" data = {     "username": "updateduser",     "email": "updateduser@example.com" } response = requests.put(url, json=data) if response.status_code == 200:     print("User updated successfully:", response.json()) else:     print("Error:", response.status_code, response.text) DELETE import requests url = "https://api.example.com/users/123" response = requests.delete(url) if response.status_code == 204:     print("User deleted successfully.") else:     print("Error:", response.status_code, response.text) Fazit HTTP-Requests spielen eine zentrale Rolle bei Web-Interaktionen. Es ist entscheidend, die verschiedenen Methoden zu kennen und zu verstehen, wann sie eingesetzt werden. Die Wahl der passenden Methode erleichtert die Kommunikation zwischen Client und Server und steigert die Effizienz von Webanwendungen.
10 December 2025 · 6 min to read
Programmiersprache Python

Wie man die Länge einer Liste in Python ermittelt

Listen werden in Python fast überall verwendet. In diesem Tutorial sehen wir uns vier Methoden an, um die Länge einer Python-Liste zu bestimmen: mithilfe eingebauter Funktionen, Rekursion und einer Schleife. Die Kenntnis der Listenlänge ist häufig erforderlich, um über sie zu iterieren und verschiedene Operationen durchzuführen. len()-Funktion len() ist eine eingebaute Python-Funktion zur Ermittlung der Länge einer Liste. Sie nimmt ein Argument entgegen — die Liste selbst — und gibt eine Ganzzahl zurück, die der Länge der Liste entspricht. Dieselbe Funktion funktioniert auch mit anderen iterierbaren Objekten wie Zeichenketten. Country_list = ["The United States of America", "Cyprus", "Netherlands", "Germany"] count = len(Country_list) print("There are", count, "countries") Output: There are 4 countries Listenlänge mit einer Schleife ermitteln Sie können die Länge einer Liste in Python mit einer for-Schleife bestimmen. Die Idee besteht darin, die gesamte Liste zu durchlaufen und bei jeder Iteration einen Zähler um 1 zu erhöhen. Fassen wir das in einer eigenen Funktion zusammen: def list_length(list): counter = 0 for i in list: counter = counter + 1 return counter Country_list = ["The United States of America", "Cyprus", "Netherlands", "Germany", "Japan"] count = list_length(Country_list) print("There are", count, "countries") Output: There are 5 countries Listenlänge mit Rekursion ermitteln Dieselbe Aufgabe lässt sich auch mit Rekursion lösen: def list_length_recursive(list): if not list: return 0 return 1 + list_length_recursive(list[1:]) Country_list = ["The United States of America", "Cyprus", "Netherlands","Germany", "Japan", "Poland"] count = list_length_recursive(Country_list) print("There are", count, "countries") Output: There are 6 countries Wie es funktioniert. Die Funktion list_length_recursive() erhält eine Liste als Eingabe. Wenn die Liste leer ist, gibt sie 0 zurück — die Länge einer leeren Liste. Andernfalls ruft sie sich rekursiv selbst mit dem Argument list[1:] auf, einem Slice der ursprünglichen Liste ab Index 1 (d. h. der Liste ohne das Element an Index 0). Das Ergebnis dieses Aufrufs wird zu 1 addiert. Mit jedem rekursiven Schritt wächst der zurückgegebene Wert um eins, während die Liste um ein Element schrumpft. length_hint()-Funktion Die Funktion length_hint() befindet sich im Modul operator. Dieses Modul enthält Funktionen, die den internen Python-Operatoren entsprechen: Addition, Subtraktion, Vergleich und so weiter. length_hint() gibt die Länge iterierbarer Objekte wie Zeichenketten, Tupel, Wörterbücher und Listen zurück. Sie funktioniert ähnlich wie len(): from operator import length_hint Country_list = ["The United States of America", "Cyprus", "Netherlands","Germany", "Japan", "Poland", "Sweden"] count = length_hint(Country_list) print("There are", count, "countries") Output: There are 7 countries Beachten Sie, dass length_hint() vor der Verwendung importiert werden muss. Fazit In diesem Leitfaden haben wir vier Methoden zur Bestimmung der Länge einer Liste in Python behandelt. Unter gleichen Bedingungen ist die effizienteste Methode len(). Die anderen Ansätze sind hauptsächlich gerechtfertigt, wenn Sie benutzerdefinierte Klassen implementieren, die einer Liste ähneln.
04 December 2025 · 3 min to read
Programmiersprache Python

Kommandozeilenoptionen und Argumentverarbeitung mit argparse in Python

Kommandozeilenoberflächen (CLIs) gehören zu den schnellsten und effektivsten Möglichkeiten, mit Software zu interagieren. Sie ermöglichen es, Befehle direkt auszuführen, was zu schnellerer Verarbeitung und erweiterten Funktionen führt. Entwickler erstellen häufig CLIs mit Python für verschiedene Anwendungen, Tools und Automatisierungsskripte – damit können Nutzer­eingaben dynamisch verarbeitet werden. Genau hier kommt das Python-Modul argparse ins Spiel. Das Python-Modul argparse vereinfacht den Umgang mit Kommandozeileneingaben und ermöglicht es Entwicklern, interaktive, benutzerfreundliche Tools zu erstellen. Als Teil der Standardbibliothek erlaubt es Programmierern, Eingaben einfach zu definieren, zu verarbeiten und zu validieren, ohne komplexe Logik schreiben zu müssen. Dieser Artikel behandelt die wichtigsten Konzepte, nützliche Beispiele und fortgeschrittene Funktionen des argparse-Moduls, damit du sofort beginnen kannst, solide Kommandozeilentools zu entwickeln. So verwendest du Python argparse für Kommandozeilen-Interfaces Schritt 1: Modul importieren Importiere das Modul in dein Parser-Skript: import argparse Damit wird die Verarbeitung von Kommandozeilenargumenten für .py-Dateien aktiviert. Schritt 2: Ein ArgumentParser-Objekt erstellen Die Klasse ArgumentParser ist die grundlegende API-Klasse des argparse-Moduls. Beginne mit dem Erstellen einer Instanz: parser = argparse.ArgumentParser(description="A Hostman tutorial on Python argparse.") Hier: description beschreibt, was das Programm macht und wird angezeigt, wenn jemand --help ausführt. Schritt 3: Eingaben und Optionen hinzufügen Definiere die Parameter und Optionen, die dein Programm akzeptiert, mit add_argument(): parser.add_argument('filename', type=str, help="Name of the file to process") parser.add_argument('--verbose', action='store_true', help="Enable verbose mode") Hier: filename ist ein Pflichtargument. --verbose ist optional und toggelt den ausführlichen Modus. Schritt 4: Benutzereingaben parsen Verarbeite die Eingaben mit parse_args(): args = parser.parse_args() Dies speichert die Kommandozeilenargumente als Attribute des args-Objekts zur weiteren Verwendung. Schritt 5: Verarbeitete Daten abrufen Nutze die Werte weiter in deinem Programm: print(f"File to process: {args.filename}") if args.verbose:     print("Verbose mode enabled") else:     print("Verbose mode disabled") Beispiel CLI-Verwendung Dateiverarbeitung ohne Verbose-Modus python3 file.py example.txt Dateiverarbeitung mit Verbose-Modus python3 file.py example.txt --verbose Hilfe anzeigen python3 file.py --help Häufige Beispiele für die Verwendung von argparse Beispiel 1: Standardwerte verwenden Manchmal benötigen optionale Argumente vordefinierte Standardwerte. In diesem Skript wird ein Timeout von 30 Sekunden gesetzt, wenn --timeout nicht angegeben wird. import argparse parser = argparse.ArgumentParser(description="Demonstrating default argument values.") parser.add_argument('--timeout', type=int, default=30, help="Timeout in seconds (default: 30)") args = parser.parse_args() print(f"Timeout value: {args.timeout} seconds") Erklärung Modul importieren ArgumentParser erstellen Optionales Argument --timeout mit type=int und Standardwert Eingaben mit parse_args() verarbeiten Ausgeben: args.timeout Fall 1: Standardwert python file.py Fall 2: Benutzerdefinierter Wert python file.py --timeout 60 Beispiel 2: Nutzung von choices Mit choices lässt sich ein Argument auf bestimmte gültige Werte beschränken. parser.add_argument('--mode', choices=['basic', 'advanced'], help="Choose the mode of operation") Fall 1: gültiger Wert python3 file.py --mode basic Fall 2: kein Wert python3 file.py Fall 3: ungültiger Wert python3 file.py --mode intermediate Beispiel 3: Mehrere Werte verarbeiten Mit nargs='+' kann ein Argument mehrere Werte akzeptieren: parser.add_argument('--numbers', nargs='+', type=int, help="List of numbers to process") Fall 1: mehrere Zahlen python3 file.py --numbers 10 20 30 Fall 2: eine Zahl python3 file.py --numbers 5 Fall 3: kein Input python3 file.py Fall 4: ungültiger Input python3 file.py --numbers 10 abc 20 Beispiel 4: Pflicht-Optionen Optionale Argumente (--arg) sind normalerweise nicht verpflichtend. Mit required=True kannst du sie verpflichtend machen. parser.add_argument('--config', required=True, help="Path to the configuration file") Fall 1: gültige Eingabe python3 file.py --config settings.json Fall 2: fehlt python3 file.py Erweiterte Funktionen Boolean Flags parser.add_argument('--debug', action='store_true', help="Enable debugging mode") Argumentgruppen group = parser.add_argument_group('File Operations') group.add_argument('--input', type=str, help="Input file") group.add_argument('--output', type=str, help="Output file") Mutually Exclusive Arguments group = parser.add_mutually_exclusive_group() group.add_argument('--json', action='store_true', help="Output in JSON format") group.add_argument('--xml', action='store_true', help="Output in XML format") Fazit Das argparse-Modul erleichtert die Erstellung zuverlässiger CLIs zur Verarbeitung von Kommandozeilenargumenten in Python. Von einfachen Eingaben bis zu erweiterten Funktionen wie choices und nargs können Entwickler robuste, benutzerfreundliche und gut strukturierte Tools bauen. Gute Benennungen und klare Hilfetexte verbessern zusätzlich die Wartbarkeit und Nutzerfreundlichkeit deiner Skripte.
25 November 2025 · 5 min to read

Haben Sie Fragen,
Anmerkungen oder Bedenken?

Unsere Fachleute stehen Ihnen jederzeit zur Verfügung,
egal ob Sie Hilfe benötigen oder nicht wissen, wo Sie anfangen sollen.
E-Mail an uns
Hostman's Support