Python позволяет автоматизировать сложные задачи, связанные со временем (таймеры, отсчеты, напоминания), используя минимальное количество кода и стандартные библиотеки.
Используются модули time (для задержек) и datetime (для работы с датой и временем).
🟡 Обратный отсчет (таймер)
Последовательный отсчет секунд до старта события с выводом прогресса в консоль. Основной принцип – использование цикла for и функции time.sleep(1) для точной секундной задержки.
Например вы бы хотели сделать таймер для отдыха или работы
import time
import sys
import winsound # Для Windows. На macOS можно использовать os.system('afplay sound.mp3')
seconds = 10 # Время обратного отсчёта
for remaining in range(seconds, 0, -1):
sys.stdout.write(f"\rОсталось {remaining} секунд{' ' * 5}")
sys.stdout.flush()
time.sleep(1)
# Сигнал окончания
winsound.Beep(1000, 500)
print("\nВремя вышло! Пора работать.")
🟡 Ежедневное уведомление (планировщик)
Здесь скрипт просто срабатывает, когда текущее время совпадает с заданным.
По сути это бесконечный цикл while True, который периодически проверяет и сравнивает отформатированное текущее время (%H:%M) с целевым.
Можно использовать для напоминаний или просто выполнения действий в определенное время (включить свет, узнать погоду, получить список дел на день) =)
from datetime import datetime
import time
import requests
target_time = "09:00" # Время напоминания
city = "Moscow"
while True:
now = datetime.now().strftime("%H:%M")
if now == target_time:
print("Время проверить задачи на день!\n")
time.sleep(60) # Чтобы не сработало несколько раз в ту же минуту
time.sleep(20) # Проверка каждые 20 секунд
🚀 Пост Guru Python: @sergey_filichkin_blog