Kontinuierliche Ausgabe in einer einzelnen Zeile drucken
Das Ziel dieser Frage besteht darin, Text in einer einzelnen Zeile auszugeben, wobei die vorherige Ausgabe überschrieben wird und eine erstellt wird Echtzeit-Fortschrittsbalken. Der betreffende Code:
print os.path.getsize(file_name)/1024, 'KB / ', size, 'KB downloaded!'
Erzeugt die folgende Ausgabe:
1784 KB / KB 1829 downloaded! 1788 KB / KB 1829 downloaded!
Um eine kontinuierliche Ausgabe in derselben Zeile zu erreichen, bietet Python eine einfache Lösung. Hier ist der geänderte Code mit dem Schlüsselwort „end“:
print(os.path.getsize(file_name)/1024+'KB / '+size+' KB downloaded!', end='\r')
Das Schlüsselwort „end“ gibt das Zeichen an, das am Ende der gedruckten Zeile platziert werden soll. Standardmäßig endet print() mit einem Zeilenumbruchzeichen (n), wodurch der Cursor in die nächste Zeile bewegt wird. Wenn Sie jedoch end='r' verwenden, wird stattdessen ein Wagenrücklaufzeichen eingefügt, wodurch der Cursor an den Anfang der aktuellen Zeile zurückkehrt.
Dies ermöglicht eine kontinuierliche Ausgabe, ohne dass das Systemmodul importiert werden muss. Die print()-Funktion von Python bietet zahlreiche weitere Schlüsselwortargumente, die Codierungsaufgaben vereinfachen können, wie zum Beispiel Flush und File.
Das obige ist der detaillierte Inhalt vonWie drucke ich eine kontinuierliche Ausgabe in einer einzelnen Zeile in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!