So zeigen Sie dynamische Ausgaben in derselben Bildschirmzeile an
Unter bestimmten Umständen ist es wünschenswert, stattdessen die aktuelle Konsolenausgabe durch neue Daten zu ersetzen als es anzuhängen. Ein gängiger Ansatz besteht darin, das Wagenrücklaufzeichen ('r') zu verwenden, um zum Anfang der aktuellen Zeile zurückzukehren:
Einfache Version:
for x in range(10): print(x, end='\r') print()
By Wenn Sie jede Druckanweisung mit „r“ beenden, kehrt der Cursor zum Zeilenanfang zurück, ohne zur nächsten Zeile zu wechseln. Dadurch kann die nachfolgende Druckanweisung die vorherige Ausgabe überschreiben.
Zeilenbereinigung:
Wenn die neue Ausgabe möglicherweise kürzer als die aktuelle Zeile ist, ist ein zusätzlicher Schritt erforderlich So löschen Sie die verbleibenden Zeichen:
for x in range(75): print('*' * (75 - x), x, end='\x1b[1K\r') print()
Die Escape-Sequenz 'x1b[1K' löscht alle Zeichen von der Cursorposition bis zum Ende des Zeile.
Langer Zeilenumbruch:
Bei Ausgaben, die die Zeilenbreite überschreiten, kann der Zeilenumbruch deaktiviert werden, um sicherzustellen, dass aufeinanderfolgende Zeichen einander überschreiben:
# Disable line wrapping print('\x1b[7l', end='') # Overwrite output for x in range(75): print('*' * (75 - x), x, end='\r') # Re-enable line wrapping print('\x1b[7h', end='') # Advance to next line print()
Hinweis: Es ist wichtig, den Zeilenumbruch nach der Deaktivierung wieder zu aktivieren, um Probleme mit zukünftigen Konsolen zu vermeiden Ausgabe.
Das obige ist der detaillierte Inhalt vonWie überschreibe ich die Konsolenausgabe in derselben Zeile?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!