„Python“ miego funkcija - kaip priversti „Python“ palaukti kelias sekundes prieš tęsiant, naudodamas komandų pavyzdžius

Galite naudoti „Python“ sleep()funkciją, kad pridėtumėte laiko vėlavimą prie savo kodo.

Ši funkcija yra patogu, jei norite, pavyzdžiui, pristabdyti kodą tarp API skambučių. Arba pagerinkite vartotojo patirtį, pridedant pauzes tarp žodžių ar grafikos.

from time import sleep sleep(2) print("hello world") 

Kai paleidžiu aukščiau nurodytą kodą, „Hello world“ spausdinimas vėluoja maždaug dvi sekundes.

Patiriu vėlavimą, nes sleep()tam tikrą sekundžių skaičių sustabdomas „skambinančio pokalbio vykdymas“ (nors tikslus laikas yra apytikslis). Taigi aukščiau pateiktame pavyzdyje programos vykdymas pristabdytas maždaug dviem sekundėms.

Šiame straipsnyje sužinosite, kaip užmigdyti „Python“ kodą.

Miego detalės

„Python“ laiko modulyje yra daug su laiku susijusių funkcijų, viena iš jų yra sleep(). Norėdami naudoti miego režimą (), turite jį importuoti.

from time import sleep 

miegoti () reikia vieno argumento: sekundės. Tai yra laikas (sekundėmis), kurį norite atidėti savo kodą.

seconds = 2 sleep(seconds) 

Miegas veikiant

Dabar naudokime sleep()keliais skirtingais būdais.

Kai iš timemodulio importuosiu miego režimą , bus atspausdintos dvi teksto eilutės. Tačiau tarp kiekvienos eilutės spausdinimo bus maždaug dviejų sekundžių vėlavimas.  

from time import sleep print("Hello") sleep(2) print("World") 

Taip nutiko, kai paleidžiau kodą:

"Hello"Ši eilutė atspausdinta iš karto.

Tada vėlavo maždaug dvi sekundės.

"World" Ši eilutė atspausdinta maždaug po dviejų sekundžių po pirmosios.

Tu gali būti tikslus

Nurodykite konkretų laiko atidėjimą, perduodami slankiojo kablelio skaičių sleep().

from time import sleep print("Prints immediately.") sleep(0.50) print("Prints after a slight delay.") 

Taip nutiko, kai paleidžiau kodą:

"Prints immediately." Ši eilutė atspausdinta nedelsiant.

Tada vėlavo maždaug 0,5 sekundės.

"Prints after a slight delay." Ši eilutė atspausdinta praėjus maždaug 0,5 sekundės po pirmosios.

Sukurkite laiko žymę

Štai dar vienas pavyzdys, į kurį reikia atsižvelgti.

Žemiau esančiame kode sukuriu penkias laiko žymes. Aš sleep()pridedu maždaug vienos sekundės vėlavimą tarp kiekvienos laiko žymės.

import time for i in range(5): current_time = time.localtime() timestamp = time.strftime("%I:%m:%S", current_time) time.sleep(1) print(timestamp) 

Čia importuoju visą laiko modulį, kad galėčiau iš jo pasiekti kelias funkcijas, įskaitant „sleep“ ().

import time 

Tada sukuriu „for loop“, kuris kartosis penkis kartus.

for i in range(5): ... 

Kiekvieną kartojimą gaunu dabartinį laiką.

current_time = time.localtime() 

Gaunu laiko žymę naudodamas kitą laiko modulio funkciją strftime(),.

timestamp = time.strftime("%I:%m:%S", current_time) 

Toliau yra miego () funkcija, dėl kurios vėluos kiekviena kilpos iteracija.

time.sleep(1) 

Vykdydamas programą palaukiu maždaug sekundę, kol bus išspausdinta pirmoji laiko žyma. Tada laukiu apie sekundę, kol bus išspausdinta kita laiko žyma, ir taip toliau, kol baigsis ciklas.

Išvestis atrodo taip:

04:08:37 04:08:38 04:08:39 04:08:40 04:08:41 

miego režimas () ir „User Experience“

Kitas naudojimo būdas sleep()yra pagerinti vartotojo patirtį sukuriant tam tikrą įtampą.

from time import sleep story_intro = ["It", "was", "a", "dark", "and", "stormy", "night", "..."] for word in story_intro: print(word) sleep(1) 

Čia aš kartoju žodžių sąrašą story_intro. Norėdami pridėti įtampos, naudoju „sleep (“) funkciją, kad po kiekvieno žodžio atspausdinimo atidėčiau maždaug sekundę.

time.sleep(1) 

Nors vykdymo greitis dažnai yra mūsų galvoje, kartais verta sulėtinti tempą ir į kodą įtraukti pauzę. Kai tos progos pasitaiko, jūs žinote, ko siekti ir kaip tai veikia.

Apie mokymąsi programuoti ir geriausius būdus tai rašau amymhaddad.com. rašau apie programavimą, mokymąsi ir produktyvumą: @amymhaddad.