Az Önhöz hasonló olvasók támogatják a MUO-t. Amikor a webhelyünkön található linkek használatával vásárol, társult jutalékot kaphatunk.

Által Sharlene Khan
Ossza megCsipogOssza megOssza megOssza megEmail

Ha Ön kezdő Python, ez az egyszerű ébresztőóra kiváló gyakorlati bevezetés.

Rengeteg gyakorlatot használhatsz Python-készségeid erősítésére. Az egyik ilyen gyakorlat egy ébresztőóra, amelyet egyetlen script fájlként írhat. Parancssor segítségével is futtathatja.

Az ébresztőóra szkriptjében a felhasználónak be kell állítania azt az időt, amikor szeretné, hogy az ébresztő megszólaljon. A Python szkript ezután egy „Ébresztés” üzenetet jelenít meg a felhasználó számára, amikor a riasztás megszólal.

Hozzáadhat egy visszaszámlálást is, amely megmutatja a felhasználónak, mennyi ideig kell várnia, amíg a riasztás megszólal.

Hogyan állítsuk be a riasztást

Hozzon létre egy Python-szkriptet, és adja hozzá az első nyomtatott utasításokat, hogy megkérdezze a felhasználót, hogy mikor szeretné beállítani a riasztást. Ha nem ismeri a Python szintaxis egy részét, néhányat megnézhet

instagram viewer
alapvető python példák hogy segítsen megérteni az alapokat.

  1. Hozzon létre egy új fájlt, és hívja meg alarm.py.
  2. Nyissa meg a Python-szkriptet bármilyen szövegszerkesztővel, például a Notepad++-val.
  3. A fájl tetején importálja a dátum- és időmodult is. A program ezek alapján számítja ki, hogy mennyi ideig kell várnia a riasztás megszólalására. Te tudod használni Python időmodulja többek között a végrehajtás késleltetésére.
    import dátum idő
    import idő
  4. Adjon hozzá egy while hurkot. A while cikluson belül kérje meg a felhasználót, hogy adjon meg egy érvényes ébresztési időt [óra: perc] formátumban. A while ciklus megismétlődik, ha a felhasználó érvénytelen számot ír be.
    érvénytelen = Igaz

    míg(érvénytelen):
    # Kérjen érvényes felhasználói adatot az ébresztési időhöz
    nyomtatás("Készlet egy érvényes időszámára a riasztó (pl. 06:30)")
    userInput = input(">>")

  5. A while cikluson belül konvertálja a felhasználó bemenetét egy tömbbe, amely elválasztja az óra értéket a perc értékétől.
    # Például ez a 6:30-at [6, 30] tömbjévé alakítja.
    alarmTime = [int (n) n esetén a userInput.split(":")]
  6. Még mindig a while cikluson belül érvényesítse az óra és a perc értékeket. Az óra 0 és 23 közötti szám legyen, a perc pedig 0 és 59 közötti szám. Ha ezek a feltételek nem teljesülnek, az érvénytelen logikai érték megismétli a while ciklust, és új érték megadására kéri a felhasználót.
    # Érvényesítse, hogy a megadott idő 0 és 24 (óra) vagy 0 és 60 (perc) között legyen.
    if alarmTime[0] >= 24 vagy alarmTime[0] < 0:
    érvénytelen = Igaz
    elif alarmTime[1] >= 60 vagy alarmTime[1] < 0:
    érvénytelen = Igaz
    más:
    érvénytelen = Hamis

Hogyan számoljuk meg, mennyit kell várni, amíg a riasztó kialszik

Várja meg, amíg a riasztás megszólal, és számolja meg, hány másodpercet kell várnia a programnak.

  1. A while ciklus alatt alakítsa át az ébresztési időt a napközbeni másodpercre. Referenciaként 86400 másodperc van egy napban. Ha a felhasználó 00:01-et ír be (éjfél után egy perccel), az ébresztési idő másodpercben 60 lesz. Ha a felhasználó 23:59-et ír be, az ébresztési idő másodpercben 86340 lesz.
    # Másodpercek száma egy órában, percben és másodpercben
    seconds_hms = [3600, 60, 1]
    # Konvertálja az ébresztés idejét másodpercekre
    alarmSeconds = sum([a*b az a, b in zip (seconds_hms[:len (alarmTime)], alarmTime)])
  2. Használja a datetime.now() függvényt az aktuális idő meghatározásához. Átalakítsa a pontos időt másodpercben.
    most = dátumidő.dátumidő.most()
    currentTimeInSeconds = sum([a*b for a, b in zip (seconds_hms, [most.óra, most.perc, most.másodperc])])
  3. Számolja ki, hogy hány másodperc múlva szólal meg a riasztás.
    secondsUntilAlarm = alarmSeconds - currentTimeInSeconds
  4. Ha az idő eltérő, az azt jelenti, hogy a riasztást a következő napra kell beállítani.
    ha másodpercig Riasztásig < 0:
    secondsUntilAlarm += 86400# másodpercek száma egy napon
  5. Jelenítsen meg egy üzenetet a felhasználónak, hogy tudja, hogy a riasztást sikeresen beállították.
    print("Riasztás van készlet!")
    nyomtatás("Az ébresztő ekkor szólal meg: %s" % datetime.timedelta (seconds=secondsUntilAlarm))

Hogyan csengesse ki a riasztót

Az ébresztés megszólaltatásához várja meg a hátralévő másodperceket, mielőtt kinyomtatja az „Ébredj!” üzenetet a felhasználónak.

  1. Használja a time.sleep funkciót a szükséges másodpercek megvárásához, amíg az ébresztőnek meg kell szólalnia.
    idő.alvás(másodpercig Riasztásig)
  2. Jelenítse meg az „Ébresztés” üzenetet a felhasználónak, amikor a riasztás megszólal.
    nyomtatás("Cseng Cseng... ideje felkelni!")

Visszaszámlálás hozzáadása a riasztás megszólalása előtt

Ha minden másodperchez visszaszámlálást szeretne hozzáadni, használja a for ciklust a hátralévő másodpercek kinyomtatásához.

  1. Cserélje ki az idő.alvás vonalat. Adjon hozzá egy for ciklust minden másodperchez, amíg a riasztás meg nem szólal, és jelenítse meg a hátralévő másodperceket a felhasználó számára.
    i tartományban (0, másodperc riasztásig):
    idő.alvás(1)
    secondsUntilAlarm -= 1
    nyomtatás(datetime.timedelta (seconds=secondsUntilAlarm))

Az ébresztőóra program futtatása

Futtassa a szkriptet a fájlhoz navigálva a parancssor használatával. A python paranccsal indítsa el a szkriptet, és állítsa be a riasztási időt.

  1. Nyisson meg egy parancssort vagy terminált. Keresse meg az alarm.py fájl helyét. Például, ha a Python-fájlt az asztalon tárolta, használja a cd Desktopot.
    CD Asztali
  2. A Python parancsfájl futtatásához használja a python parancsot.
    pitonriasztás.py
  3. Állítsa be az ébresztés érvényes idejét [óra: perc] formátumban. Például 4:30.
  4. Az ébresztő beállítja és elindítja a visszaszámlálást minden másodpercben, amíg a riasztásnak meg kell szólalnia. Várja meg, amíg a riasztás befejezi a visszaszámlálást.
  5. Miután a program befejezte a visszaszámlálást, a program egy üzenetet jelenít meg, amely jelzi, hogy megszólal a riasztó.

Készítsen egyszerű programokat Python segítségével

Az ébresztőóra egy jó gyakorlat, amelyet gyakorolhat Python-készségeinek élesítésére. Az ébresztőóra alkalmazást egyetlen szkriptfájlba írhatja, és parancssor segítségével futtathatja. Futás közben a program megkéri a felhasználót, hogy adjon meg egy érvényes időpontot a riasztás beállításához.

Az ébresztés beállítása után számítsa ki, hány másodpercet kell várnia, amíg az ébresztőóra megszólal. Várjon ennyi ideig, mielőtt üzenetet jelenítene meg a felhasználónak, amikor a riasztás megszólal.

Ezt a riasztási gyakorlatot más nyelveken is újra létrehozhatja. Megtanulhatja, hogyan hozhat létre digitális órát HTML, CSS és JavaScript használatával.

Digitális óra létrehozása HTML, CSS és JavaScript használatával

Olvassa el a következőt

Ossza megCsipogOssza megOssza megOssza megEmail

Kapcsolódó témák

  • Programozás
  • Programozás
  • Piton
  • Kódolási oktatóanyagok

A szerzőről

Sharlene Khan (52 cikk megjelent)

Shay teljes munkaidőben szoftverfejlesztőként dolgozik, és szívesen ír útmutatókat, hogy segítsen másokon. Bachelor of IT-vel rendelkezik, és korábbi minőségbiztosítási és oktatási tapasztalatokkal rendelkezik. Shay szeret játszani és zongorázni.

Továbbiak Sharlene Khantól

Megjegyzés

Iratkozzon fel hírlevelünkre

Csatlakozzon hírlevelünkhöz műszaki tippekért, ismertetőkért, ingyenes e-könyvekért és exkluzív ajánlatokért!

Kattintson ide az előfizetéshez