Heim > Artikel > Backend-Entwicklung > Wie ersetze ich die statische Konsolenausgabe durch dynamische Zähler in Python?
Konsolenausgabe durch dynamische Zähler in Python ersetzen
Haben Sie es satt, dass die Ausgabe Ihrer Python-Konsole den Bildschirm überschwemmt? Lassen Sie uns untersuchen, wie Sie Zähler erstellen, die aktualisiert werden, ohne vorherige Zeilen zu überschreiben.
Ein einfacher Ansatz besteht darin, „r“ zu verwenden, um den Cursor an den Anfang der aktuellen Zeile zurückzusetzen und so die vorhandene Ausgabe effektiv zu ersetzen. Dies ist eine effektive Lösung, wenn Ihre Ausgabelänge konstant bleibt:
<code class="python">sys.stdout.write("\rDoing thing {}".format(i)) sys.stdout.flush()</code>
Wenn Ihre Ausgabelänge jedoch variieren kann, ist eine ausgefeiltere Lösung erforderlich. Betrachten Sie diese Fortschrittsbalken-Implementierung:
<code class="python">def start_progress(title): sys.stdout.write(title + ": [" + "-"*40 + "]" + chr(8)*41) sys.stdout.flush() def progress(x): x = int(x * 40 // 100) sys.stdout.write("#" * (x - progress_x)) sys.stdout.flush() def end_progress(): sys.stdout.write("#" * (40 - progress_x) + "]\n") sys.stdout.flush()</code>
Mit diesem Code können Sie einen anpassbaren Fortschrittsbalken anzeigen, indem Sie start_progress aufrufen, ihn mit progress(x) aktualisieren, wobei x der Prozentsatz ist, und ihn schließlich mit end_progress beenden.
Wenn Sie also das nächste Mal möchten, dass Ihre Konsolenausgabe interaktiver und benutzerfreundlicher wird, sollten Sie diese Techniken zum Erstellen dynamischer Zähler in Python in Betracht ziehen.
Das obige ist der detaillierte Inhalt vonWie ersetze ich die statische Konsolenausgabe durch dynamische Zähler in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!