Amikor letölt egy fájlt vagy elindít egy játékot, esztétikai animáció jelenik meg, amely a befejezésig frissül. Ez egy folyamatjelző sáv. A folyamatjelző sáv egy grafikus elem, amely egy feladat, például a fájlok letöltése, feltöltése vagy átvitele folyamatának megjelenítésére szolgál.

Kétféle folyamatjelző sáv létezik: határozott és határozatlan. A határozott folyamatjelző sávok nyomon követik a feladat előrehaladását az idő múlásával. A határozatlan folyamatjelző sávok végtelenségig futnak egy hurkos animációval.

Tehát hogyan hozhat létre egy meghatározott folyamatjelző sávot egy Python CLI programban?

Mi az a tqdm modul?

A tqdm egy olyan modul, amelyet elsősorban Casper da Costa-Luis tart fenn tíz másik taggal együtt. A tqdm az arab taqaddum szóból származik, amely jelentése „haladás”, és a spanyol „nagyon szeretlek” rövidítése (te quiero demasiado).

A tqdm modul segítségével vonzó, funkcionális folyamatjelző sávot készíthet közvetlenül a termináljában. A tqdm modul telepítéséhez nyissa meg a terminált, és futtassa:

instagram viewer
csipog telepítés tqdm

Mi az idő modul?

A Python szabványos segédprogram modulja tartalmazza az időmodul alapértelmezés szerint, így nem kell telepítenie. Használhatja az időmodulban található alvás funkciót, hogy késleltetést adjon az alkalmazásokhoz, ami segít megjeleníteni a sáv előrehaladását.

Az időmodul segítségével lekérheti a dátumot és az időt, ütemezheti a feladatokat, és olyan hasznos alkalmazásokat készíthet, mint a egyszerű ébresztőóra, vagy stopperóra.

Folyamatjelző sáv hozzáadása és testreszabása

Az alapértelmezett folyamatjelző sáv könnyen használható, és számos lehetőséggel testreszabhatja.

1. Egyszerű folyamatjelző sáv

Létrehozhat egy egyszerű folyamatjelző sávot, ha importálja a tqdm osztályt a tqdm modulból és az alvás funkciót az időmodulból. Használjon for ciklust, és iterálja a tqdm-et a kívánt tartományon.

A tartomány 9e9-ig (kilenc milliárd) bármi lehet. Adja át a másodpercek számát az alvó funkciónak a késleltetés hozzáadásához, hogy megjeleníthesse és működés közben láthassa a folyamatjelző sávot.

Megvalósíthat egy egyszerű folyamatjelző sávot, például:

tól től tqdm import tqdm
tól től idő import alvás

i-hez tqdm-ben (tartomány (100)):
alvás(.1)

A tqdm importálása helyett a tqdm modulból importálhatja a trange paramétert a tqdm és a range kombinálásához, és a paraméter közvetlen átadásához.

tól től tqdm import furcsa
tól től idő import alvás

számomra furcsa (100):
alvás(.1)

Az egyszerű folyamatjelző sáv létrehozása során kapott kimenet így néz ki:

Ez a kimenet az előrehaladás grafikus és szöveges változatát tartalmazza, valamint az időzítési statisztikákat.

2. Folyamat sáv Leíró szöveggel

Felvehet egy leíró címkét a folyamatjelző sávba, hogy elmagyarázza a célját. Adja át a megjeleníteni kívánt szöveget idézőjelbe foglalva a desc paraméter:

for i in tqdm (tartomány (0, 10), desc ="Előrehalad: "):
alvás(.4)

A leíró szöveg és a folyamatjelző sáv hozzáadásakor kapott kimenet így néz ki:

3. Folyamat sáv testreszabott szélességgel

Alapértelmezés szerint a folyamatjelző sáv szélessége dinamikusan a kimeneti ablak méretéhez igazodik. A segítségével tetszés szerint testreszabhatja a ncols paraméter.

Testreszabott szélességű folyamatjelző sávot a következőképpen állíthat be:

i esetén tqdm-ben (tartomány (0, 10), ncols = 100, desc ="Előrehalad: "):
alvás(.1)

A folyamatjelző sáv szélességének meghosszabbításával kapott eredmény így néz ki:

4. Folyamat sáv szín használatával

A színparaméter segítségével testreszabhatja a folyamatjelző sáv színét. Ezt kétféleképpen teheti meg:

  1. Szín neve: Használhatja a szín nevét, például zöld, fekete, cián stb.
  2. Hex kód:A hexadecimális kód egy formátum amelyben a számítógép a színt tárolja. A hexadecimális színt egy hash-sel (#) jelölheti, amelyet 6 karakter követ hexadecimálisan (0-9, a-f). A #000000 hexadecimális kód a feketét, míg a #ffffff a fehéret jelöli. Ezeknek a számoknak az intenzitásának változtatásával különböző színárnyalatokat kaphat. Használhatja a Színválasztó eszköz a Google-tól a Hex Code szín kiválasztásához és beillesztéséhez.

A folyamatjelző sáv testreszabott színekkel valósítható meg:

for i in tqdm (tartomány (0, 100), color="#00ffff", desc ="Előrehalad: "):
alvás(.1)

A folyamatjelző sáv színének megváltoztatásakor kapott kimenet:

5. Folyamat sáv minimális időközzel

Létrehozhat egy folyamatjelző sávot, amely az alapértelmezett beállítás helyett minimális időközönként frissül. Átadhat egy számot, például 1,5-öt vagy 2-t, amely két frissítés közötti intervallumként szolgál. A minimális intervallum alapértelmezett értéke 0,1.

A folyamatjelző sáv minimális időközzel valósítható meg:

i-hez tqdm-ben (tartomány (0, 100), minintervallum = 2, desc ="Előrehalad: "):
alvás(.1)

A kimenet, amelyet a folyamatjelző sáv minimális intervallumának megadásával kapunk:

6. Folyamat sáv ASCII karakterek használatával

A képernyőn látható szokásos sávok helyett ASCII-karakterekkel is létrehozhat folyamatjelző sávot. Az ASCII karakterek használatához állítsa be a ascii paramétert a kívánt formátumra.

Ha olyasmit használsz 12345*, a tartomány minden oszlopa egytől a csillagig ismétlődik egymás után. Bár hűvös és testreszabható, ügyeljen arra, hogy felhasználóbarát legyen, ha valódi alkalmazásokban használja.

A folyamatjelző sáv ASCII karakterek használatával valósítható meg:

i esetén tqdm-ben (tartomány (0, 100), ascii ="12345*"):
alvás(.1)

A folyamatjelző sáv ASCII-karaktereinek használatával kapott kimenet így néz ki:

7. Folyamat sáv a megadott kezdőpont használatával

Ahelyett, hogy a folyamatjelző sávot nulláról kezdené, beállíthat egy konkrét kezdőpontot a folyamatjelző sáv számára. Adjon át egy kezdő értéket, például 50-et a kezdeti paraméter.

Megvalósíthat egy folyamatjelző sávot egy adott kezdőpont használatával:

i esetén tqdm-ben (tartomány (0, 100), kezdeti = 50, csökkenő ="Előrehalad: "):
alvás(.1)

A folyamatjelző sáv egy meghatározott ponton történő elindításakor kapott kimenet:

8. Folyamatjelző sáv meghatározott számú iterációval

Létrehozhat egy folyamatjelző sávot, amely meghatározott számú iterációt futtat. Ha 500 iterációt szeretne futtatni az 50 000-ből, adja meg az 500-at tartományként és 50000-et az iterációk teljes számaként. teljes paraméter.

A folyamatjelző sáv meghatározott számú iterációval valósítható meg:

i-hez tqdm-ben (tartomány (0, 500), összesen = 50000, desc ="Előrehalad: "):
alvás(.1)

A meghatározott számú iterációt tartalmazó folyamatjelző sáv használatával kapott kimenet:

A folyamatjelző sáv alkalmazásai

Különböző helyzetekben folyamatjelző sávok jelennek meg, például egy médialejátszó lejátszásakor vagy a lépések megjelenítése egy online űrlapon keresztül.

Míg a folyamatjelző sáv esztétikusan néz ki, fontos szerepet játszik abban, hogy visszajelzést adjon a felhasználónak, amelynek hiányában elhagyná a webhelyet.