Aina kun lataat tiedoston tai aloitat pelin, näet esteettisen animaation, joka päivittyy, kunnes se on valmis. Tämä on edistymispalkki. Edistymispalkki on graafinen elementti, jota käytetään visualisoimaan tehtävän, kuten tiedostojen lataamisen, lataamisen tai siirron etenemistä.
Etenemispalkkeja on kahdenlaisia: määrätty ja määrittelemätön. Selkeät edistymispalkit seuraavat tehtävän edistymistä ajan myötä. Määrittämättömät edistymispalkit jatkuvat loputtomasti silmukkaanimaatiolla.
Joten kuinka voit luoda määrätyn edistymispalkin Python CLI -ohjelmassa?
Mikä on tqdm-moduuli?
tqdm on moduuli, jota ensisijaisesti ylläpitää Casper da Costa-Luis yhdessä kymmenen muun jäsenen kanssa. tqdm tulee arabian sanasta taqaddum, joka voi tarkoittaa "edistystä", ja on lyhenne sanoista "rakastan sinua niin paljon" espanjaksi (te quiero demasiado).
Tqdm-moduulin avulla voit tehdä houkuttelevan, toimivan edistymispalkin suoraan päätteeseesi. Asenna tqdm-moduuli avaamalla terminaali ja suorittamalla:
pip Asentaa tqdm
Mikä on aikamoduuli?
Pythonin vakioapumoduuli sisältää aikamoduuli oletuksena, joten sinun ei tarvitse asentaa sitä. Voit käyttää aikamoduulissa olevaa lepotilatoimintoa lisätäksesi sovelluksiisi viivettä, mikä auttaa visualisoimaan palkin edistymisen.
Aikamoduulin avulla voit hakea päivämäärän ja kellonajan, ajoittaa tehtäviä ja rakentaa hyödyllisiä sovelluksia, kuten a yksinkertainen herätyskellotai sekuntikello.
Edistymispalkin lisääminen ja sen mukauttaminen
Oletuksena olevaa edistymispalkkia on helppo käyttää, ja voit muokata sitä useilla vaihtoehdoilla.
1. Yksinkertainen edistymispalkki
Voit luoda yksinkertaisen edistymispalkin tuomalla tqdm-luokan tqdm-moduulista ja nukkumistoiminnon aikamoduulista. Käytä for-silmukkaa ja iteroi tqdm haluamallasi alueella.
Alue voi olla mikä tahansa 9e9 (yhdeksän miljardia) asti. Siirrä sekuntien määrä nukkumistoiminnolle lisätäksesi viiveen, jotta voit visualisoida ja nähdä edistymispalkin toiminnassa.
Voit toteuttaa yksinkertaisen edistymispalkin seuraavasti:
alkaen tqdm tuonti tqdm
alkaen aika tuonti nukkua
i in tqdm (alue (100)):
nukkua(.1)
Sen sijaan, että tuoisit tqdm: n, voit tuoda tqdm-moduulista trangen yhdistääksesi tqdm: n ja rangen ja välittääksesi parametrin suoraan.
alkaen tqdm tuonti outoa
alkaen aika tuonti nukkua
minulle outo (100):
nukkua(.1)
Yksinkertaisen edistymispalkin luomisen tulos näyttää tältä:
Tämä tulos sisältää graafiset ja tekstiversiot edistymisestä sekä ajoitustilastot.
2. Edistymispalkki kuvaustekstillä
Voit lisätä edistymispalkkiin kuvaavan tunnisteen, joka selittää sen tarkoituksen. Välitä teksti, jonka haluat näyttää lainausmerkeissä käärittynä desc parametri:
i: lle in tqdm (alue (0, 10), desc ="Edistyminen: "):
nukkua(.4)
Tulos, jonka saat lisäämällä kuvausteksti edistymispalkin kanssa, näyttää tältä:
3. Edistymispalkki mukautetulla leveydellä
Oletusarvoisesti edistymispalkin leveys on asetettu dynaamiseksi tulosikkunan koon mukaan. Voit muokata sitä haluamallasi tavalla -sovelluksen avulla ncols parametri.
Voit toteuttaa etenemispalkin mukautetulla leveydellä seuraavasti:
i: lle tqdm (alue (0, 10), ncols = 100, desc ="Edistyminen: "):
nukkua(.1)
Etenemispalkin leveyden pidentämisellä saatu tulos näyttää tältä:
4. Edistymispalkki käyttämällä värejä
Voit mukauttaa edistymispalkin väriä väriparametrilla. Voit tehdä tämän kahdella tavalla:
- Värin nimi: Voit käyttää värin nimeä, kuten vihreää, mustaa, syaania ja muuta.
- Hex-koodi:Heksakoodi on muoto johon tietokone tallentaa värin. Voit merkitä Hex-värin hashilla (#), jota seuraa 6 merkkiä heksadesimaalimuodossa (0-9, a-f). Heksakoodi #000000 edustaa mustaa, kun taas #ffffff edustaa valkoista. Vaihtelemalla näiden numeroiden voimakkuutta saat erilaisia värisävyjä. Voit käyttää Googlen Color Picker -työkalu valitaksesi ja liittääksesi heksadesimaalikoodin värin.
Voit toteuttaa edistymispalkin mukautetuilla väreillä seuraavasti:
i: lle in tqdm (alue (0, 100), väri="#00ffff", desc ="Edistyminen: "):
nukkua(.1)
Tulos, jonka saat vaihtamalla edistymispalkin väriä:
5. Edistymispalkki minimivälillä
Voit luoda edistymispalkin, joka päivittyy vähimmäisvälillä oletusasetuksen sijaan. Voit välittää numeron, kuten 1,5 tai 2, joka toimii kahden päivityksen välinä. Minimivälin oletusarvo on 0,1.
Voit ottaa käyttöön edistymispalkin minimivälillä seuraavasti:
i: lle in tqdm (alue (0, 100), minintervalli = 2, desc ="Edistyminen: "):
nukkua(.1)
Tulos, jonka saat määrittämällä edistymispalkkiin vähimmäisvälin:
6. Edistymispalkki ASCII-merkkejä käyttäen
Voit luoda edistymispalkin käyttämällä ASCII-merkkejä tavallisten näytöllä näkyvien palkkien sijaan. Jos haluat käyttää ASCII-merkkejä, aseta ascii parametri haluttuun muotoon.
Jos käytät jotain sellaista 12345*, jokainen alueen sarake iteroituu yhdestä asteriskiin peräkkäin. Vaikka se on siisti ja muokattavissa, muista käyttää käyttäjäystävällistä, kun käytät sitä oikeissa sovelluksissa.
Voit toteuttaa edistymispalkin käyttämällä ASCII-merkkejä seuraavasti:
i: lle tqdm: ssä (alue (0, 100), ascii ="12345*"):
nukkua(.1)
Tulos, jonka saat käyttämällä ASCII-merkkejä edistymispalkissa, näyttää tältä:
7. Edistymispalkki käyttämällä määritettyä aloituspistettä
Sen sijaan, että aloittaisit edistymispalkin nollasta, voit asettaa edistymispalkin tietyn aloituskohdan. Anna aloitusarvo, kuten 50, arvoon alkukirjain parametri.
Voit ottaa käyttöön edistymispalkin käyttämällä tiettyä aloituspistettä seuraavasti:
i: lle in tqdm (alue (0, 100), alku = 50, lasku ="Edistyminen: "):
nukkua(.1)
Tulos, jonka saat käynnistäessäsi edistymispalkin määritetystä kohdasta:
8. Edistymispalkki tietyllä määrällä iteraatioita
Voit luoda edistymispalkin, joka suorittaa tietyn määrän iteraatioita. Jos haluat suorittaa 500 iteraatiota 50 000:sta, jätä 500 alueeksi ja 50 000 iteraatioiden kokonaismääräksi kaikki yhteensä parametri.
Voit ottaa käyttöön edistymispalkin käyttämällä tiettyä määrää iteraatioita seuraavasti:
i: lle in tqdm (alue (0, 500), yhteensä = 50000, laskeva ="Edistyminen: "):
nukkua(.1)
Tulos, jonka saat käyttämällä edistymispalkkia tietyllä määrällä iteraatioita:
Edistymispalkin sovellukset
Näet edistymispalkkeja eri tilanteissa, kuten mediasoittimen toistossa tai vaiheiden näyttämisessä verkkolomakkeen kautta.
Vaikka edistymispalkki näyttää esteettiseltä, sillä on tärkeä tehtävä antaa käyttäjälle palautetta, jonka puuttuessa hän poistuisi verkkosivustolta.