Kaltaisesi lukijat auttavat tukemaan MUO: ta. Kun teet ostoksen käyttämällä sivustollamme olevia linkkejä, voimme ansaita kumppanipalkkion.
Jos olet Python-aloittelija, tämä yksinkertainen herätyskello on erinomainen käytännön johdatus.
Voit vahvistaa Python-taitojasi monilla harjoituksilla. Yksi näistä harjoituksista on herätyskello, jonka voit kirjoittaa yhdeksi skriptitiedostoksi. Voit myös suorittaa sen komentokehotteen avulla.
Herätyskellon komentosarjassa käyttäjän on asetettava aika, jolloin hän haluaa herätyksen soivan. Python-skripti näyttää sitten käyttäjälle "Wake up" -viestin, kun hälytys soi.
Voit myös lisätä lähtölaskennan, joka näyttää käyttäjälle, kuinka kauan hänen on odotettava hälytyksen soitumista.
Kuinka asettaa hälytys
Luo Python-skripti ja lisää ensimmäiset tulostetut lauseet kysyäksesi käyttäjältä, milloin hän haluaa asettaa hälytyksen. Jos et ole perehtynyt joihinkin Python-syntaksiin, voit katsoa joitain perus python-esimerkkejä auttaa sinua ymmärtämään perusasiat.
- Luo uusi tiedosto ja kutsu se alarm.py.
- Avaa Python-skripti millä tahansa tekstieditorilla, kuten Notepad++.
- Tuo tiedoston yläreunasta sekä päivämäärä- että aikamoduulit. Ohjelma käyttää näitä laskeessaan, kuinka kauan sen on odotettava hälytyksen soitumista. Voit käyttää Pythonin aikamoduuli viivästyttää toteuttamista muun muassa.
tuonti treffiaika
tuonti aika - Lisää while-silmukka. Pyydä while-silmukan sisällä käyttäjää syöttämään kelvollinen hälytysaika muodossa [tunti: minuutti]. While-silmukka toistuu, jos käyttäjä syöttää virheellisen numeron.
virheellinen = Totta
sillä aikaa(virheellinen):
# Hanki kelvollinen käyttäjän syöte hälytysajalle
Tulosta("Aseta pätevä aikavarten hälytin (esim. 06:30)")
userInput = input(">>") - Muunna while-silmukan sisällä käyttäjän syöte taulukkoon, joka erottaa tunnin arvon minuuttiarvosta.
# Esimerkiksi tämä muuntaa 6:30 taulukoksi [6, 30].
alarmTime = [int (n) n: lle käyttäjäInput.split(":")] - Vahvista tunti- ja minuuttiarvot edelleen while-silmukan sisällä. Tuntien tulee olla 0 ja 23 välillä ja minuutin välillä 0 ja 59. Jos nämä ehdot eivät täyty, virheellinen looginen arvo saa while-silmukan toistumaan ja pyytää käyttäjää syöttämään uuden arvon.
# Vahvista syötetty aika väliltä 0 - 24 (tuntia) tai 0 - 60 (minuuttia)
jos hälytysaika[0] >= 24 tai hälytysaika[0] < 0:
virheellinen = Totta
elif alarmTime[1] >= 60 tai hälytysaika[1] < 0:
virheellinen = Totta
muu:
virheellinen = Väärä
Kuinka laskea, kuinka kauan on odotettava, kunnes hälytys soi
Odota, kunnes hälytys soi, laskemalla kuinka monta sekuntia ohjelman on odotettava.
- Muunna while-silmukan alapuolella hälytysaika sekunniksi, joka on päivän aikana. Viitteenä, vuorokaudessa on 86400 sekuntia. Jos käyttäjä syöttää 00:01 (minuutti keskiyön jälkeen), hälytysaika sekunneissa on 60. Jos käyttäjä syöttää kellon 23:59, hälytysaika sekunneissa on 86340.
# Sekuntien lukumäärä tunnissa, minuutissa ja sekunnissa
sekuntia_hms = [3600, 60, 1]
# Muunna hälytysaika sekunneiksi
alarmSeconds = summa([a*b a: lle, b zip-muodossa (sekuntia_hms[:len (alarmTime)], alarmTime)]) - Käytä datetime.now()-funktiota määrittääksesi nykyisen ajan. Muunna nykyinen kellonaika sekunteina.
nyt = päivämääräaika.päivämääräaika.nyt()
currentTimeInSeconds = summa([a*b a: lle, b zip-muodossa (sekuntia_hms, [nyt.tunti, nyt.minuutti, nyt.sekunti])]) - Laske sekuntien määrä, jonka jälkeen hälytys soi.
secondsUntilAlarm = alarmSeconds - currentTimeInSeconds
- Jos eri aika on negatiivinen, se tarkoittaa, että hälytys on asetettava seuraavalle päivälle.
jos sekuntia Hälytykseen < 0:
secondsUntilAlarm += 86400# sekuntimäärä päivässä - Näytä käyttäjälle viesti, joka ilmoittaa, että hälytys on asetettu onnistuneesti.
print("Hälytys On aseta!")
Tulosta("Herätys soi kello %s" % datetime.timedelta (sekuntia = sekuntia hälytykseen))
Kuinka soittaa hälytys
Jos haluat soittaa hälytyksen, odota jäljellä olevat sekuntia ennen kuin tulostat "Wake up!" viesti käyttäjälle.
- Käytä time.sleep-toimintoa odottaaksesi tarvittavan määrän sekunteja, kunnes hälytyksen on soitettava.
aika.nukkua(sekuntia Hälytykseen)
- Näytä "Wake up" -viesti käyttäjälle, kun hälytys soi.
Tulosta("Sormus rengas... aika herätä!")
Kuinka lisätä lähtölaskenta ennen kuin hälytys soi
Jos haluat lisätä laskurin jokaiselle sekunnille, käytä for-silmukkaa tulostaaksesi käyttäjälle jäljellä olevat sekunnit.
- Vaihda time.sleep line. Lisää for-silmukka jokaiselle sekunnille, kunnes hälytys soi, ja näytä jäljellä olevat sekunnit käyttäjälle.
i alueella (0, sekuntia hälytykseen):
aika.nukkua(1)
secondsUntilAlarm -= 1
Tulosta(datetime.timedelta (sekuntia = sekuntia Hälytykseen))
Herätyskello-ohjelman suorittaminen
Suorita komentosarja siirtymällä tiedostoon komentorivin avulla. Käytä python-komentoa skriptin käynnistämiseen ja herätysajan asettamiseen.
- Avaa komentokehote tai pääte. Siirry alarm.py-tiedoston sijaintiin. Jos esimerkiksi olet tallentanut Python-tiedoston työpöydälle, käytä cd Desktopia.
CD Työpöytä
- Käytä python-komentoa Python-komentosarjan suorittamiseen.
pythonhälytys.py
- Aseta kelvollinen aika hälytykselle muodossa [tunti: minuutti]. Esimerkiksi 4:30.
- Hälytys asettuu ja käynnistää lähtölaskennan joka sekuntia kohti, kunnes hälytyksen on kuuluttava. Odota, että hälytys lopettaa laskennan.
- Kun ohjelma on suorittanut lähtölaskennan, ohjelma näyttää viestin, joka osoittaa, että hälytys soi.
Luo yksinkertaisia ohjelmia Pythonilla
Herätyskello on hyvä harjoitus, jota voit harjoitella Python-taitojen terävöittämiseksi. Voit kirjoittaa herätyskellosovelluksen yhteen komentosarjatiedostoon ja suorittaa sen komentorivin avulla. Ajon aikana ohjelma pyytää käyttäjää syöttämään kelvollisen ajan hälytyksen asettamiseen.
Kun herätys on asetettu, laske kuinka monta sekuntia sinun on odotettava herätyskellon soitumista. Anna ohjelman odottaa niin kauan ennen kuin se näyttää käyttäjälle viestin hälytyksen soittua.
Voit myös luoda tämän hälytysharjoituksen uudelleen muilla kielillä. Voit oppia luomaan digitaalisen kellon HTML: n, CSS: n ja JavaScriptin avulla.