Python time sleep () - Yhden luukun ratkaisu time.sleep () -menetelmälle



Tässä artikkelissa Python aika-nukkumisesta opit nukkumistoiminnosta, sen toiminnasta ja eri time.sleep () -menetelmän sovelluksista Pythonissa.

Toisinaan vaadimme, että ohjelmamme tai ohjelmamme osat suoritetaan pienen keston jälkeen. tekee tämän tehtävän vaivattomaksi läpi time.sleep () -toiminto . Thänen artikkelissaan käsitellään tämän toiminnon toiminnallisuutta ja sen sovelluksia.

Ennen kuin jatkat, katsotaanpa nopeasti tämän artikkelin aiheita:





miten tostring toimii jaavassa

Aloitetaan. :)



Miksi käyttää Python time.sleep ()?

Unitoiminnolla on erittäin tärkeä rooli tilanteessa, jossa haluamme pysäyttää ohjelmavirran ja antaa muiden teloitusten tapahtua. Tämä toiminto on määritelty pythonin molemmissa versioissa, ts. 2 ja 3.Se kuuluu Pythonin aikamoduuliin. Se lisää periaatteessa viiveen suoritukseen ja se vain keskeyttää nykyisen ketjun eikä koko ohjelmaa.

Aikamoduuli

Python time.sleep () -funktio on läsnä Pythonin aikamoduulissa. Ennen kuin käytät tätä , sinun on tuotava tämä moduuli komennolla:



tuontiaika

Kun tämä moduuli on tuotu, voit käyttää time.sleep () -toimintoa. Syntaksi on seuraava:

SYNTAKSI:

nukkua (sekuntia)

Se vie yhden parametrin, joka on sekuntia, kuten näet. Tämä aiheuttaa periaatteessa viiveen niin moneksi sekunniksi suorituksen aikana. Palata Tämän toiminnon arvo on mitätön .

Otetaan nyt joitain esimerkkejä tämän toiminnon toiminnan ymmärtämiseksi.

Python time.sleep () Esimerkkejä:

Tarkastellaan seuraavaa esimerkkiä, joka aiheuttaa yhden sekunnin viiveen lähtöjen välillä.

Esimerkki:

tuonti aika # tuonti aikamoduuli uniaika = 1 # aika lisätä viive ensimmäisen tulostuslausunnon tulostuksen ('Hei') jälkeen. uni (uniaika) # uniajan tulostus ('Edureka!')

Tuotos:

Jos yllä oleva koodi suoritetaan, se lisää viiveen ohjelmassa, joten seuraava käsky suoritetaan 1 sekunnin kuluttua.Tarkan viiveen saavuttamiseksi voit myös siirtää liukulukuarvot funktiolle. Jos esimerkiksi kuluu 0,1 sekuntia, se viivästyttää 100 millisekuntia.

Tässä on toinen esimerkki, joka palauttaa järjestelmän ajan ennen ohjelman suorittamista ja sen jälkeen.

Esimerkki:

# unen esittelyn tuontiaika # Aloitusajan tulostus ('Koodin suorittamisen alkamisaika on:', end = '') tulosta (time.ctime ()) # hault-ohjelman aika.sleep (6) # end time print (' koodin suorittamisen lopetusaika on: ', end =' ') print (time.ctime ())

Tuotos:

Koodin suorittamisen alkamisaika on: su 23. kesäkuuta 22:36:19 2019
Koodin suorittamisen päättymisaika on: su 23. kesäkuu 22:36:25 2019
Prosessi palautti 0 (0x0) suoritusajan: 6,089 s
Paina mitä tahansa näppäintä jatkaaksesi . . .

Esimerkki lepotilasta:

Seuraava on esimerkki nukkumistoiminnosta:

tuontiaika startTime = time.time () i alueella (5, 10): tulosta (i) # viive 1 sekunnin ajan. sleep (1) endTime = time.time () elapsedTime = endTime - startTime print (' Kulunut aika =% s '% elapsedTime)

Tuotos:

5
6
7
8
9

Kulunut aika = 5.006335258483887
Prosessi palautti 0 (0x0) suoritusajan: 5.147 s

Täydellinen toteutus on kestänyt 5 sekuntia, kun suoritus pysähtyi 1 sekunniksi joka kerta. Suorittamiseen tarvittava lisäaika on myös aika, jonka järjestelmä suorittaa ohjelmien taustatoimintoja.

Python-unen erilainen viive ()

Ohjelman suorittamisen välillä voidaan lisätä erilaisia ​​viiveaikoja Python vaaditusta tehosta riippuen.Seuraava koodi osoittaa, miten se voidaan tehdä:

Esimerkki:

tuontiaika i: ​​lle [1, 0,1, 2, 0,3]: tulostus ('nukkun% s'% i, loppu = '') tulostusaika ('sekuntia'). uni (i)

Tuotos:

Nukkun 1 sekunnin ajan
Nukkun 0,1 sekuntia
Nukkun 2 sekuntia
Nukkun 0,3 sekuntia

Prosessi palautti 0 (0x0) suoritusajan: 3,538 s

Laiska painatus:

Jos haluat tulostaa jotain hienosti, voit tehdä sen käyttämällä sleep () -toimintoa seuraavasti:

# importing time module import time message = 'Hienoa merkkitulostusta!' i: lle viestissä: tulosta (i) time.sleep (0.3)

Jos suoritat yllä olevan koodin, jokaisen merkin tulostuksessa näkyy viive, joka näyttää hienolta.

Python-langan lepotila

Monisäikeisessä ympäristössä lepotila () osoittautuu erittäin tärkeäksi, koska suorituksen aikana se voi lisätä viivettä suoritettavassa nykyisessä säikeessä.

Esimerkki:

tuontiaika ketjuttamisesta tuontilangan luokka Runner (Thread): def run (self): x: lle alueella (0, 7): print (x) time.sleep (2) class Delay (Thread): def run (self): x alueella (106, 109): tulosta (x) aika. lepotila (7) tulosta ('Staring Runner Thread') Runner (). start () print ('Start Delay Thread Thread') Delay (). start () tulosta ('Valmis' ')

Alla on yllä olevan langoitusesimerkin tulos:

python-säie uni - Python Sleep - EdurekaTuotos:

Jos suoritat ohjelman, huomaat, että koko ohjelmaa ei pysäytetä, vaan kokeile vain käynnissä olevaa ketjua.

Sovellus:

Tätä menetelmää on monia sovelluksia, esimerkiksi voimme käyttää sitä luomaan mukavan käyttöliittymän, joka tulostaa valikon tai otsikon jollakin hienolla tavalla, mutta yksi tärkeistä sovelluksista on pysäyttää suoritettava taustaprosessi jossain väliajassa.

Sovellusesimerkki:

import time string = 'Edureka!' print_string = '' i alueella (0, len (merkkijono)): print_string = print_string + merkkijono [i] print (print_string) time.sleep (2)

Tuotos:

ON
Toim
Menestys
Edur
Edure
Edurek
Edureka
Edureka!


Kuten olemme nähneet, että lepotila keskeyttää ohjelman jonkin aikaa, jolloin Pythonin aikamoduuli on kätevä. Katsotaanpa vähän siitä, miten voimme ottaa käyttäjältä tietoja ja käyttää samaa toimintoa dynaamisesti.

Esimerkki dynaamisesta lepotilasta

Tässä on esimerkki lepotilasta, joka vie käyttäjän syötteen viiveen lisäämiseen kahden tulostustoiminnon välille ja tulostaa tulostustoiminnon suorittamiseen kuluneen ajan. Seuraava esimerkki perustuu Python 3.x -käyttöjärjestelmään.

tuontiaika def nukkuja (): kun taas True: num = input ('Anna odotusaika:') yritä: num = float (num) paitsi ValueError: print ('Vain numero.n') jatka # Suorita aika.sleep () -komento, # ja näytä ennen ja jälkeen -tulostus ('Ennen:% s'% time.ctime ()) time.sleep (num) print ('After:% sn'% time.ctime ()) try: sleeper ( ) paitsi KeyboardInterrupt: print ('nnException Exiting.') exit ()

Tuotos:

Anna odotusaika: 1
Ennen: su 23. kesäkuuta 22:44:13 2019
Jälkeen: Su 23. kesäkuuta 22:44:14 2019
Anna odotusaika: 3
Ennen: su 23. kesäkuuta 22:44:16 2019
Jälkeen: Su 23. kesäkuuta 22:44:19 2019

Tarkkuus

Jos haluat keskeyttää suorituksen lyhyemmäksi ajaksi, tälle toiminnolle on rajoituksia käyttöjärjestelmästä riippuen, koska tämä toiminto käyttää käyttöjärjestelmien sleep () -toimintoa, Linuxissa odotusaika voi olla pienempi kuin Windowsiin verrattuna.

Yhteenveto

Edellä olevassa artikkelissa käsiteltiin pythonin sleep () -menetelmää, jota käytetään periaatteessa viiveen lisäämiseen ohjelman suorittamiseen, tämä paketti on Pythonin aikamoduulissa, joka käyttää pohjimmiltaan taustalla olevan käyttöjärjestelmän sleep () -toimintoa. Esitimme myös muutamia koodiesimerkkejä tämän toiminnon käytöstä ja tarkastelimme unen sovelluksia. Osoitettu hienoja tapoja käyttää tätä toimintoa myös siitä, miten se toimii kierteisessä ympäristössä.

Saadaksesi syvällistä tietoa Pythonista sen eri sovellusten kanssa, voit ilmoittautua livenä 24/7 -tuella ja käyttöikä.

kuinka verrata kahta merkkijonoa

Onko sinulla kysymys meille? Mainitse se tämän “Python time sleep method in Python” -blogin kommenttiosassa ja otamme sinuun yhteyttä mahdollisimman pian.