Heim >Backend-Entwicklung >Python-Tutorial >Wie erstelle ich im Terminal eine Textfortschrittsleiste mit Blockzeichen?

Wie erstelle ich im Terminal eine Textfortschrittsleiste mit Blockzeichen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-15 06:41:13348Durchsuche

How to Create a Text Progress Bar in the Terminal Using Block Characters?

Erstellen einer Textfortschrittsleiste im Terminal mit Blockzeichen

Das Hoch- und Herunterladen von Dateien von einem FTP-Server kann ein zeitaufwändiger Vorgang sein, insbesondere bei großen Dateien. Es ist hilfreich, Benutzern visuelles Feedback zum Fortschritt solcher Vorgänge zu geben. Eine übliche Methode hierfür ist die Anzeige eines Fortschrittsbalkens im Terminal.

Verwendung von Blockzeichen für Fortschrittsbalken

Textfortschrittsbalken können mit einfachen Blockzeichen wie Klammern ([ und ]), Bindestriche (-) und Gleichheitszeichen (=). Diese Zeichen können wiederholt und kombiniert werden, um einen Balken zu erstellen, der sich mit fortschreitendem Vorgang füllt.

Fortschritt anzeigen, ohne die vorherige Ausgabe zu löschen

Um die vorherige Konsolenausgabe beizubehalten, während der Fortschrittsbalken angezeigt wird, können Sie dies tun Verwenden Sie Wagenrückläufe (r) und Zeilenvorschübe (n). Der Wagenrücklauf bewegt den Cursor zurück zum Anfang der aktuellen Zeile, während der Zeilenvorschub den Cursor zur nächsten Zeile bewegt. Durch die Verwendung dieser Zeichen in Verbindung mit dem Fortschrittsbalken können Sie den Balken aktualisieren, ohne vorherige Inhalte zu löschen.

Implementieren eines einfachen Fortschrittsbalkens

Hier ist ein Beispiel, wie Sie einen einfachen Fortschrittsbalken implementieren können in Python unter Verwendung der oben genannten Prinzipien:

from time import sleep

def print_progress_bar(iteration, total, prefix="", suffix="", decimals=1, length=100, fill="#", print_end="\r"):
    percent = ("{0:.{1}f}".format(100 * (iteration / float(total)), decimals))
    filled_length = int(length * iteration // total)
    bar = fill * filled_length + "-" * (length - filled_length)
    print(f"\r{prefix} |{bar}| {percent}% {suffix}", end=print_end)
    if iteration == total:
        print()

# A sample list of 57 items
items = list(range(57))

# Iterate through the list and display the progress bar
for i, item in enumerate(items):
    sleep(0.1)
    print_progress_bar(i + 1, len(items), prefix="Progress:", suffix="Complete", length=50)

Anpassen des Fortschrittsbalkens

Das obige Beispiel ist nur ein grundlegendes Beispiel Implementierung, und Sie können den Fortschrittsbalken an Ihre Bedürfnisse anpassen. Sie können beispielsweise die zum Erstellen des Balkens verwendeten Zeichen, seine Länge oder die Anzahl der im Prozentsatz angezeigten Dezimalstellen ändern. Sie können auch ein Präfix oder Suffix hinzufügen, um zusätzliche Informationen zum Vorgang bereitzustellen.

Indem Sie diese Prinzipien befolgen, können Sie ganz einfach einen Textfortschrittsbalken in Ihren Konsolenanwendungen erstellen, um Benutzern visuelles Feedback zu ihrem Fortschritt zu geben.

Das obige ist der detaillierte Inhalt vonWie erstelle ich im Terminal eine Textfortschrittsleiste mit Blockzeichen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn