2012-04-11 9 views
0

Ich möchte die Cmd-Ausgabe meines Python-Skripts ersetzen, ohne die ersten drei Zeichen der Zeile zu überschreiben. Hier ist, was ich meine:So führen Sie teilweisen Wagenrücklauf durch

Wie ich es will:

>>>ID1 downloading 
>>>ID1 converting 
>>>ID1 finished 

Mit /r:

>>>ID0 downloading 
>>>converting 
>>>finished 

Antwort

4

Dies ist nicht grundsätzlich ein Python-Frage; Es ist eine Standardausgabefrage.

Die Standardausgabe funktioniert nicht auf diese Weise. Die einfachste Sache ist, einfach "ID1" umzuschreiben.

Andernfalls müssen Sie zu etwas fortgeschritteneren bewegen: entweder konsolenspezifische Formatierungsbefehle (wie ANSI) oder eine Bibliothek wie curses.

+1

Ich nehme an, mit "umschreiben" meinen Sie "wieder schreiben". Einverstanden, +1. – delnan

0

Versuchen Sie dies. Aber das funktioniert möglicherweise nicht in IDLE.

from time import sleep 
from sys import stdout 
stdout.write("\r%s" % "ID1 downloading") 
stdout.flush() 
sleep(1) 
stdout.write("\r%s" % "ID1 converting ") 
stdout.flush() 
sleep(1) 
stdout.write("\r%s" % "ID1 done  ") 
stdout.write("\r \r\n") # clean up 
Verwandte Themen