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.
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
alapvető python példák hogy segítsen megérteni az alapokat.- Hozzon létre egy új fájlt, és hívja meg alarm.py.
- Nyissa meg a Python-szkriptet bármilyen szövegszerkesztővel, például a Notepad++-val.
- 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ő - 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(">>") - 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(":")] - 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.
- 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)]) - 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])]) - Számolja ki, hogy hány másodperc múlva szólal meg a riasztás.
secondsUntilAlarm = alarmSeconds - currentTimeInSeconds
- 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 - 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.
- 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)
- 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.
- 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.
- 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
- A Python parancsfájl futtatásához használja a python parancsot.
pitonriasztás.py
- Állítsa be az ébresztés érvényes idejét [óra: perc] formátumban. Például 4:30.
- 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.
- 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.