Python-Version von freopen ()

8

Gibt es irgendetwas in Python, das die Funktionalität von freopen () in C oder C ++ replizieren kann? Um genau zu sein, möchte ich die Funktionalität von:

replizieren %Vor%

und

%Vor%

Und dann verwenden Sie die gleichen (Standard) Funktionen für Konsolen-E / A für Datei-E / A. Irgendwelche Ideen?

    
Quixotic 16.05.2013, 08:12
quelle

5 Antworten

8

sys.stdout ist einfach file object, Sie können es also erneut an einem anderen Ziel öffnen

%Vor%

out ist nur für die Wiederherstellung von sys.stdout destination auf Standard nach der Arbeit (wie vorgeschlagen Martijn Pieters - Sie können es wiederherstellen mit sys.__stdout__ , oder nicht wiederherstellen, wenn Sie es nicht brauchen) / p>     

ForEveR 16.05.2013 08:16
quelle
4

Wenn Sie an der * nix-Plattform arbeiten, können Sie Ihre eigene freopen schreiben.

%Vor%     
Marcus 16.05.2013 08:26
quelle
3

Sie können sich auch den contextmanager Decorator in contextlib für die temporäre Umleitung ansehen :

%Vor%

Beispiel:

%Vor%     
root 16.05.2013 08:50
quelle
0

Versuchen Sie Folgendes:

%Vor%

Textdateien sind selbsterklärend. Sie können diesen Code jetzt in Sublime Text oder einem anderen Texteditor ausführen.

    
Kushagra Kukreja 20.01.2018 13:58
quelle
0

Dies sollte helfen:

%Vor%     
Melvin Abraham 08.02.2018 08:10
quelle

Tags und Links