Skapa en förloppsindikator i Python CLI

Skapa en förloppsindikator i Python CLI

När du laddar ner en fil eller startar ett spel ser du en estetisk animation som uppdaterar sig själv tills den är klar. Detta är en förloppsindikator. En förloppsindikator är ett grafiskt element som används för att visualisera förloppet för en uppgift som att ladda ner, ladda upp eller överföra filer.





Det finns två typer av förloppsindikatorer: bestämda och obestämda. Bestäm förloppsstaplar spårar en uppgifts framsteg över tiden. Obestämda förloppsindikatorer körs oändligt med en looping animation.





MAKEUSE AV DAGENS VIDEO

Så, hur kan du skapa en bestämd förloppsindikator i ett Python CLI-program?





Vad är tqdm-modulen?

tqdm är en modul som huvudsakligen underhålls av Casper da Costa-Luis tillsammans med tio andra medlemmar. tqdm kommer från det arabiska ordet taqaddum som kan betyda 'framsteg' och är en förkortning för 'jag älskar dig så mycket' på spanska (te quiero demasiado).

Med hjälp av tqdm-modulen kan du skapa en attraktiv, funktionell förloppsindikator direkt i din terminal. För att installera tqdm-modulen, öppna din terminal och kör:



pip install tqdm

Vad är tidsmodulen?

Pythons standardverktygsmodul inkluderar tidsmodulen som standard, så du behöver inte installera det. Du kan använda vilofunktionen som tillhandahålls i tidsmodulen för att lägga till fördröjning till dina applikationer, vilket hjälper dig att visualisera stapelns framsteg.

Du kan använda tidsmodulen för att få datum och tid, schemalägga uppgifter och bygga användbara applikationer som en enkel väckarklocka , eller ett stoppur.





Hur man lägger till en förloppsindikator och anpassar den

Standardförloppsindikatorn är lätt att använda och du kan anpassa den med flera alternativ.

1. Enkel förloppsindikator

Du kan skapa en enkel förloppsindikator genom att importera tqdm-klassen från tqdm-modulen och vilofunktionen från tidsmodulen. Använd en for loop och iterera tqdm på önskat intervall.





Räckvidden kan vara allt upp till 9e9 (nio miljarder). Skicka antalet sekunder till vilofunktionen för att lägga till en fördröjning så att du kan visualisera och se förloppsindikatorn i aktion.

Du kan implementera en enkel förloppsindikator så här:

from tqdm import tqdm 
from time import sleep

for i in tqdm(range(100)):
sleep(.1)

Istället för att importera tqdm kan du importera trange från tqdm-modulen för att kombinera tqdm och range och skicka parametern direkt.

hur man uppgraderar till kodi 17 på firestick
from tqdm import trange 
from time import sleep

for i in trange(100):
sleep(.1)

Utdatan du får när du skapar en enkel förloppsindikator ser ut så här:

  Enkel förloppsindikator

Denna utdata inkluderar grafiska och textuella versioner av framstegen, tillsammans med tidsstatistik.

2. Förloppsindikator med beskrivningstext

Du kan lägga till en beskrivande etikett i förloppsindikatorn för att förklara dess syfte. Skicka texten du vill visa inlindad med citattecken som besk parameter:

for i in tqdm(range(0, 10), desc ="Progress: "): 
sleep(.4)

Utdata du får när du lägger till en beskrivningstext tillsammans med förloppsindikatorn ser ut så här:

hur man ställer in standard Google -konto på chrome
  Förloppsindikator med text

3. Förloppsindikator med anpassad bredd

Som standard är bredden på förloppsindikatorn inställd dynamisk till storleken på utmatningsfönstret. Du kan anpassa den efter dina önskemål med hjälp av ncols parameter.

Du kan implementera en förloppsindikator med anpassad bredd som:

for i in tqdm(range(0, 10), ncols = 100, desc ="Progress: "): 
sleep(.1)

Resultatet du får när du förlänger bredden på förloppsindikatorn ser ut så här:

  Förloppsindikator med beskrivning och ncols

4. Förloppsindikator med färg

Du kan anpassa färgen på förloppsindikatorn med hjälp av färgparametern. Du kan göra detta på två sätt:

  1. Färgnamn: Du kan använda namnet på färgen som grön, svart, cyan och mer.
  2. Hexkod: Hexkod är ett format där datorn lagrar färgen. Du kan beteckna Hex-färg med en hash (#) följt av 6 tecken i hexadecimal (0-9, a-f). Hexkoden #000000 representerar svart medan #ffffff representerar vit. Genom att variera intensiteten på dessa siffror får du olika nyanser av färger. Du kan använda Färgvalsverktyg från Google för att välja och klistra in Hex Code-färgen.

Du kan implementera en förloppsindikator med anpassade färger som:

for i in tqdm(range(0, 100), colour="#00ffff", desc ="Progress: "): 
sleep(.1)

Resultatet du får när du ändrar färgen på förloppsindikatorn:

  Förloppsindikator med färg

5. Förloppsindikator med minsta intervall

Du kan skapa en framstegsindikator som uppdateras med ett minsta intervall istället för standardinställningen. Du kan skicka ett nummer som 1,5 eller 2 som kommer att fungera som intervallet mellan två uppdateringar. Standardvärdet för minimiintervallet är 0,1.

Du kan implementera en förloppsindikator med ett minsta intervall som:

for i in tqdm(range(0, 100), mininterval = 2, desc ="Progress: "): 
sleep(.1)

Utdata får du genom att ange ett minimiintervall till förloppsindikatorn:

  Förloppsindikator med minsta intervall

6. Förloppsindikator med ASCII-tecken

Du kan skapa en förloppsindikator med ASCII-tecken istället för de vanliga staplarna som du ser på skärmen. För att använda ASCII-tecken ställ in ascii parameter till önskat format.

Om du använder något som 12345* , var och en av kolumnerna i intervallet itererar från en till asterisk sekventiellt. Även om det är coolt och anpassningsbart, se till att använda det användarvänligt när du använder det i riktiga applikationer.

Du kan implementera en förloppsindikator med ASCII-tecken som:

for i in tqdm(range(0, 100), ascii ="12345*"): 
sleep(.1)

Utdata du får genom att använda ASCII-tecken i förloppsindikatorn ser ut så här:

hur man minskar mp3 -filstorlek
  Förloppsindikator med ASCII-tecken

7. Förloppsindikator med angiven startpunkt

Istället för att starta en förloppsindikator från noll kan du ställa in en specifik startpunkt för förloppsindikatorn. Skicka ett startvärde som 50 till första parameter.

Du kan implementera en förloppsindikator med en specifik startpunkt som:

for i in tqdm(range(0, 100), initial = 50, desc ="Progress: "): 
sleep(.1)

Utdata du får när du startar förloppsindikatorn vid en angiven punkt:

  Förloppsindikator med initial parameter

8. Förloppsindikator med ett specificerat antal iterationer

Du kan skapa en förloppsindikator som kör ett visst antal iterationer. Om du vill köra 500 iterationer av 50000, skicka 500 som intervall och 50000 som det totala antalet iterationer till total parameter.

Du kan implementera en förloppsindikator med ett specifikt antal iterationer som:

for i in tqdm(range(0, 500), total = 50000, desc ="Progress: "): 
sleep(.1)

Utdata du får med hjälp av en förloppsindikator med ett specificerat antal iterationer:

  Förloppsindikator med specificerat antal iterationer

Tillämpningar av förloppsindikatorn

Du kommer att se förloppsindikatorer i olika situationer, som uppspelning av en mediaspelare eller att visa stegen genom ett onlineformulär.

Även om en förloppsindikator ser estetisk ut gör den ett viktigt jobb med att ge feedback till användaren i avsaknad av vilken de skulle lämna webbplatsen.