Bralci, kot ste vi, pomagajo podpirati MUO. Ko opravite nakup prek povezav na našem spletnem mestu, lahko zaslužimo partnersko provizijo.

Avtor: Sharlene Khan
DelitiTweetDelitiDelitiDelitiE-naslov

Če ste začetnik Pythona, je ta preprosta budilka odličen praktični uvod.

Obstaja veliko vaj, s katerimi lahko okrepite svoje znanje Pythona. Ena od teh vaj je budilka, ki jo lahko napišete kot eno samo skriptno datoteko. Zaženete ga lahko tudi z ukaznim pozivom.

V skriptu budilke mora uporabnik nastaviti čas, ko želi, da se alarm oglasi. Skript Python bo nato uporabniku prikazal sporočilo "Wake up", ko se sproži alarm.

Dodate lahko tudi odštevanje, da uporabniku pokažete, kako dolgo mora čakati, da se sproži alarm.

Kako nastaviti alarm

Ustvarite skript Python in dodajte prve natisnjene izjave, da uporabnika vprašate, kdaj želi nastaviti alarm. Če niste seznanjeni z nekaterimi sintaksami Pythona, si jih lahko ogledate osnovni primeri pythona da vam pomaga razumeti osnove.

instagram viewer
  1. Ustvarite novo datoteko in jo pokličite alarm.py.
  2. Odprite skript Python s katerim koli urejevalnikom besedil, kot je Notepad++.
  3. Na vrhu datoteke uvozite oba modula za datum in čas. Program jih bo uporabil pri izračunu, koliko časa mora počakati, da se alarm oglasi. Lahko uporabiš Pythonov časovni modul med drugim za odložitev izvršitve.
    uvoz Datum čas
    uvoz čas
  4. Dodajte zanko medtem. Znotraj zanke while prosite uporabnika, da vnese veljaven čas alarma v obliki [ura: minuta]. Zanka while se bo ponovila, če uporabnik vnese neveljavno številko.
    neveljavno = Prav

    medtem(neveljavno):
    # Pridobite veljaven uporabniški vnos za čas alarma
    natisni("Set a veljaven časza alarm (npr. 06:30)")
    userInput = vnos(">>")

  5. Znotraj zanke while pretvorite vnos uporabnika v matriko, ki ločuje vrednost ure od vrednosti minute.
    # Na primer, to bo pretvorilo 6:30 v niz [6, 30].
    alarmTime = [int (n) za n v userInput.split(":")]
  6. Še vedno znotraj zanke while preverite vrednosti ure in minute. Ura naj bo številka med 0 in 23, minuta pa med 0 in 59. Če ti pogoji niso izpolnjeni, bo neveljavna logična vrednost povzročila ponovitev zanke while in od uporabnika zahtevala, da vnese novo vrednost.
    # Potrdite, da je vneseni čas med 0 in 24 (ur) ali 0 in 60 (minut)
    če je čas alarma[0] >= 24 ali alarmTime[0] < 0:
    neveljavno = Prav
    elif alarmTime[1] >= 60 ali alarmTime[1] < 0:
    neveljavno = Prav
    drugače:
    neveljavno = False

Kako prešteti, koliko časa je treba čakati, da se alarm oglasi

Počakajte, da se alarm oglasi, tako da preštejete, koliko sekund bo moral program čakati.

  1. Pod zanko while pretvorite čas alarma v sekundo v dnevu. Za referenco, dan ima 86400 sekund. Če uporabnik vnese 00:01 (eno minuto čez polnoč), bo čas alarma v sekundah 60. Če uporabnik vnese 23:59, bo čas alarma v sekundah 86340.
    # Število sekund v uri, minuti in sekundi
    sekunde_hms = [3600, 60, 1]
    # Pretvorite čas alarma v sekunde
    alarmSeconds = sum([a*b za a, b v zip (seconds_hms[:len (alarmTime)], alarmTime)])
  2. Za določitev trenutnega časa uporabite funkcijo datetime.now(). Pretvori trenutni čas v sekundah.
    zdaj = datetime.datetime.now()
    currentTimeInSeconds = sum([a*b za a, b v zip (seconds_hms, [now.hour, now.minute, now.second])])
  3. Izračunajte število sekund do sprožitve alarma.
    secondsUntilAlarm = alarmSeconds - currentTimeInSeconds
  4. Če je časovna razlika negativna, to pomeni, da je treba alarm nastaviti za naslednji dan.
    if secondsUntilAlarm < 0:
    secondsUntilAlarm += 86400# število sekund v dnevu
  5. Prikažite uporabniku sporočilo, da je bil alarm uspešno nastavljen.
    print("Alarm je set!")
    natisni("Alarm bo zazvonil ob %s" % datetime.timedelta (seconds=secondsUntilAlarm))

Kako zazvoniti alarm

Če želite zazvoniti alarm, počakajte preostale sekunde, preden natisnete "Wake up!" sporočilo uporabniku.

  1. Uporabite time.sleep, da počakate toliko sekund, da se alarm sproži.
    čas.spati(secondsUntilAlarm)
  2. Ko se alarm sproži, uporabniku prikažite sporočilo »Zbudi se«.
    natisni("Prstan Prstan... čas, da se zbudiš!")

Kako dodati odštevanje, preden zazvoni budilka

Če želite dodati odštevanje za vsako sekundo, uporabite zanko for, da natisnete sekunde, ki so ostale uporabniku.

  1. Zamenjajte vrstico time.sleep. Dodajte zanko for za vsako sekundo, dokler se alarm ne oglasi, in uporabniku prikažite preostale sekunde.
    za i v območju (0, secondsUntilAlarm):
    čas.spati(1)
    secondsUntilAlarm -= 1
    tiskanje(datetime.timedelta (seconds=secondsUntilAlarm))

Kako zagnati program Budilka

Zaženite skript tako, da se v ukazni vrstici pomaknete do datoteke. Uporabite ukaz python, da zaženete skript in nastavite čas alarma.

  1. Odprite ukazni poziv ali terminal. Pomaknite se do lokacije vaše datoteke alarm.py. Na primer, če ste svojo datoteko Python shranili na namizje, uporabite cd Desktop.
    cd Namizje
  2. Za zagon skripta Python uporabite ukaz python.
    pythonalarm.py
  3. Nastavite veljaven čas za alarm v obliki [ura: minuta]. Na primer 4:30.
  4. Alarm se bo nastavil in začel odštevati za vsako sekundo, dokler se alarm ne sproži. Počakajte, da alarm konča odštevanje.
  5. Ko program konča odštevanje, bo program prikazal sporočilo, da vam pokaže, da alarm zvoni.

Ustvarite preproste programe z uporabo Pythona

Budilka je dobra vaja, s katero lahko izostrite svoje znanje Pythona. Aplikacijo budilke lahko napišete v eno datoteko skripta in jo zaženete z ukazno vrstico. Med izvajanjem bo program od uporabnika zahteval, da vnese veljaven čas za nastavitev alarma.

Ko je alarm nastavljen, izračunajte, koliko sekund boste morali čakati, da se budilka oglasi. Naj program počaka toliko časa, preden prikaže sporočilo uporabniku, ko se sproži alarm.

To vajo alarma lahko ponovno ustvarite tudi v drugih jezikih. Naučite se lahko ustvariti digitalno uro z uporabo HTML, CSS in JavaScript.

Kako ustvariti digitalno uro z uporabo HTML, CSS in JavaScript

Preberi Naprej

DelitiTweetDelitiDelitiDelitiE-naslov

Sorodne teme

  • Programiranje
  • Programiranje
  • Python
  • Vadnice za kodiranje

O avtorju

Sharlene Khan (Objavljenih 52 člankov)

Shay dela s polnim delovnim časom kot razvijalec programske opreme in uživa v pisanju vodnikov za pomoč drugim. Je diplomirana IT in ima predhodne izkušnje z zagotavljanjem kakovosti in mentorstvom. Shay obožuje igre in igra klavir.

Več od Sharlene Khan

Komentiraj

Naročite se na naše novice

Pridružite se našemu glasilu za tehnične nasvete, ocene, brezplačne e-knjige in ekskluzivne ponudbe!

Za naročanje kliknite tukaj