Heim >Backend-Entwicklung >Python-Tutorial >Wie erstelle ich mit Python eine anpassbare Textfortschrittsleiste in Ihrem Terminal?

Wie erstelle ich mit Python eine anpassbare Textfortschrittsleiste in Ihrem Terminal?

Barbara Streisand
Barbara StreisandOriginal
2024-12-06 17:52:13365Durchsuche

How to Create a Customizable Text Progress Bar in Your Terminal Using Python?

Textfortschrittsleiste im Terminal mit Blockzeichen

Einführung

Viele terminalbasierte Anwendungen erfordern eine Möglichkeit, den Fortschritt zu visualisieren. In diesem Artikel erfahren Sie, wie Sie mithilfe von Blockzeichen einen Fortschrittsbalken in einem Terminal erstellen und dabei die vorherige Ausgabe beibehalten.

Anpassbarer Fortschrittsbalken

Der folgende Code stellt einen anpassbaren Fortschrittsbalken bereit, der angepasst werden kann Wird mit jeder Python 3-Anwendung verwendet:

def printProgressBar(iteration, total, prefix='', suffix='', decimals=1, length=100, fill='█', printEnd='\r'):
    percent = ("{0:.{0}f}".format(decimals)).format(100 * (iteration / float(total)))
    filledLength = int(length * iteration // total)
    bar = fill * filledLength + '-' * (length - filledLength)
    print(f'\r{prefix} |{bar}| {percent}% {suffix}', end=printEnd)

    # Print new line on completion
    if iteration == total:
        print()

Single-Call-Version

Der Einfachheit halber stellt der folgende Code eine Single-Call-Version von bereit der obige Fortschrittsbalken:

def progressBar(iterable, prefix='', suffix='', decimals=1, length=100, fill='█', printEnd='\r'):
    total = len(iterable)
    
    # Progress bar printing function
    def printProgressBar(iteration):
        percent = ("{0:.{0}f}".format(decimals)).format(100 * (iteration / float(total)))
        filledLength = int(length * iteration // total)
        bar = fill * filledLength + '-' * (length - filledLength)
        print(f'\r{prefix} |{bar}| {percent}% {suffix}', end=printEnd)

    # Initial call
    printProgressBar(0)
    
    # Update progress bar
    for i, item in enumerate(iterable):
        yield item
        printProgressBar(i + 1)

    # Print new line on completion
    print()

Verwendung

Der folgende Code zeigt, wie der Fortschrittsbalken verwendet wird:

import time

# List of items
items = list(range(0, 57))

# Progress bar usage
for item in progressBar(items, prefix='Progress:', suffix='Complete', length=50):
    # Do stuff...
    time.sleep(0.1)

Schlussfolgerung

Dieser Code Snippets bieten eine vielseitige und benutzerfreundliche Fortschrittsbalkenlösung, die das Benutzererlebnis jeder terminalbasierten Anwendung verbessern kann.

Das obige ist der detaillierte Inhalt vonWie erstelle ich mit Python eine anpassbare Textfortschrittsleiste in Ihrem Terminal?. 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