Hvordan kan jeg lage en tidsforsinkelse i Python?
Jeg vil gjerne vite hvordan jeg legger inn en tidsforsinkelse i et Python-skript.
2622
3
Jeg vil gjerne vite hvordan jeg legger inn en tidsforsinkelse i et Python-skript.
Her er et annet eksempel der noe kjøres omtrent en gang i minuttet:
Du kan bruke funksjonen
sleep()
i modulentime
. Den kan ta et float-argument for oppløsning under sekundet.Litt moro med en søvnig generator.
Spørsmålet handler om tidsforsinkelse. Det kan være fast tid, men i noen tilfeller kan vi trenge en forsinkelse målt siden forrige gang. Her er en mulig løsning:
Forsinkelse målt siden forrige gang (våkner regelmessig)
Situasjonen kan være at vi ønsker å gjøre noe så regelmessig som mulig, og vi ønsker ikke å bry oss med alle
last_time
,next_time
ting rundt koden vår.Buzzer generator
Følgende kode (sleepy.py) definerer en
buzzergen
generator:Påkaller vanlig buzzergen
Og kjører den ser vi:
Vi kan også bruke den direkte i en løkke:
Og når vi kjører den, kan vi se:
Som vi ser, er denne summeren ikke for stiv og lar oss ta igjen vanlige søvnige intervaller selv om vi sover og kommer ut av vanlig tidsplan.