Ich wollte die Zeichenkette anzeigen, ohne Python einzubrechen, also mein Memo
Ich habe für jeden Prozess eine Meldung angezeigt, um den Fortschritt zu verwalten, aber ich war verärgert, dass die Leitung einmal unterbrochen wurde.
test.py
for i in xrange(10):
print "i = %d"%i
i=1 i=2 i=3 i=4
So was. Was mir hier aufgefallen ist, ist eine Escape-Sequenz namens \ r. Die Rückkehr wird durch die Erinnerung an eine alte Schreibmaschine dargestellt. Ich denke, dass dies verwendet werden kann
Da keine Zeilenumbrüche verwendet werden, fügen Sie am Ende des Satzes (Komma) hinzu und fügen Sie Schlaf hinzu, damit Sie dies überprüfen können.
test2.py
import time
for i in xrange(10):
print "¥r i = %d"%i,
time.sleep(0.3);
i=9
Es wird nichts angezeigt und nur i = 9 wird angezeigt. Java usw. funktionierte gut mit dieser Methode, Python jedoch nicht. Fügen Sie daher sys.stdout.flush () für die erzwungene Spülung ein.
test3.py
import time
import sys
for i in xrange(10):
print "¥r i = %d"%i,
sys.stdout.flush()
time.sleep(0.3)
Jetzt funktioniert es gut.
Es scheint eine andere Möglichkeit zu geben, die Standardausgabefunktion von python3 zu verwenden. Als ich es nachgeschlagen habe, gab es auch viele Artikel zu diesem Thema.
Recommended Posts