0Pricing
Coding Interview Prep · Lektion

input() gegen sys.stdin im Vergleich

Erfahren Sie, warum einfaches input() bei großen Tests Zeit kostet

input() gegen sys.stdin im Vergleich ist eine kostenlose Coding Interview Prep-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Coding Interview Prep-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Coding Interview Prep-Kurs umfasst insgesamt 4 Lektionen.

Die versteckten Kosten von input()

Jeder Aufruf von input() erledigt im Hintergrund zusätzliche Arbeit. Bei wenigen Zeilen ist das kein Problem, aber Wettbewerbe können Ihnen Tausende Zeilen liefern. ⏱️

Warum sich das summiert

Die Verlangsamung entsteht durch den Overhead pro Aufruf: Eingabeaufforderungen, Flush-Vorgänge und Kodierungsprüfungen werden bei jeder gelesenen Zeile wiederholt.

Lernen Sie sys.stdin kennen

Der schnellere Weg führt über sys.stdin, den unverarbeiteten Eingabestrom. Dabei entfallen die zusätzlichen Komfortfunktionen, die input() für Sie übernimmt.

import sys
data = sys.stdin

Eine Zeile schnell einlesen

Verwenden Sie sys.stdin.readline(), um schnell eine einzelne Zeile einzulesen. Die Funktion verhält sich wie input(), verursacht aber pro Aufruf deutlich weniger Overhead.

import sys
line = sys.stdin.readline()

Achten Sie auf den Zeilenumbruch

readline() behält das abschließende Zeichen für den Zeilenumbruch. Rufen Sie .strip() auf, um es vor dem Auswerten des Werts zu entfernen.

n = int(sys.stdin.readline().strip())

Alles auf einmal einlesen

Für die schnellste Eingabe lesen Sie die gesamte Eingabe mit sys.stdin.read() auf einmal ein und verarbeiten den Text anschließend selbst.

data = sys.stdin.read()

Den gesamten Datenblock aufteilen

Rufen Sie nach read() .split() auf, um alle Tokens in eine flache Liste umzuwandeln. Leerzeichen und Zeilenumbrüche werden dabei gemeinsam behandelt.

tokens = sys.stdin.read().split()

input für mehr Geschwindigkeit neu binden

Ein gängiger Trick besteht darin, input auf readline zu verweisen. So bleibt Ihr alter Code unverändert, läuft aber schneller.

import sys
input = sys.stdin.readline

Wann input() völlig ausreicht

Wenn eine Aufgabe nur eine Handvoll Zeilen einliest, ist das normale input() völlig ausreichend. Verwenden Sie den schnellen Weg für große Eingaben.

Auch print hat Overhead

Dasselbe gilt für die Ausgabe: Viele Aufrufe von print() sind langsam. Wir beheben das in einer späteren Lektion über das Bündeln von Ausgaben.

Wählen Sie das richtige Werkzeug

Als Faustregel gilt: kleine Eingabe, verwenden Sie input(); große Eingabe, wechseln Sie zu sys.stdin. Wenn Sie das Werkzeug an N anpassen, sparen Sie Punkte.

Schnelltest

Ein kurzer intuitiver Test zur Lesegeschwindigkeit.

Zusammenfassung: Schnelles Einlesen

Sie haben sys.stdin als schnelle Alternative zu input() kennengelernt: readline() pro Zeile oder read().split() für die gesamte Eingabe. Passen Sie das Werkzeug an die Eingabegröße an. ⚡

Häufig gestellte Fragen

Ist die Lektion „input() gegen sys.stdin im Vergleich“ kostenlos?

Ja — der vollständige Text von „input() gegen sys.stdin im Vergleich“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Coding Interview Prep-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Coding Interview Prep-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „input() gegen sys.stdin im Vergleich“?

Erfahren Sie, warum einfaches input() bei großen Tests Zeit kostet Du übst Coding Interview Prep mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Coding Interview Prep zu starten?

Keine Vorkenntnisse erforderlich. Coding Interview Prep auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „input() gegen sys.stdin im Vergleich“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Coding Interview Prep-Lektion Code schreiben und ausführen?

Ja. Jede Coding Interview Prep-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. input() gegen sys.stdin im Vergleich
  2. Viele Zahlen in einer Zeile einlesen
  3. Ausgaben richtig stapelweise erstellen
  4. N Zeilen lesen und Sonderfälle behandeln
← Zurück zu Coding Interview Prep