Frage

Ich habe viele Perl -Skripte, die wie folgt aussehen. Was es tut, ist, dass es automatisch jede als Befehlszeilenargument angegebene Datei öffnet und in diesem Fall den Inhalt dieser Datei druckt. Wenn keine Datei angegeben wird, wird sie stattdessen aus Standardeingaben gelesen.

while ( <> ) {
    print $_;
}

Gibt es eine Möglichkeit, in Python etwas Ähnliches zu tun, ohne jede Datei explizit öffnen zu müssen?

War es hilfreich?

Lösung

Das fileInput Das Modul in der Standardbibliothek von Python wurde genau für diesen Zweck entwickelt, und ich zitiere ein bisschen Code aus der URL, die ich gerade angegeben habe:

import fileinput
for line in fileinput.input():
    process(line)

Verwenden print anstelle process Und Sie haben das genaue Äquivalent Ihres Perl -Code.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top