обратный отсчёт на python
мне нужен "большой" таймер, чтобы один раз написать в коде, через сколько секунд должно сработать действие. допустим, я сконвертил большой промежуток во времени и вставил в таймер. и он будет напоминать сколько осталось в секундах даже после того, как я перезайду в программу. он должен мне показывать остаток в секундах и обновляться каждую секунду(просто писать остаток в консоли каждую секунду).
(этот промежуток чуть больше 1 года!)
я знаю что можно для таких случаев использовать модуль time, но не понимаю как.
это возможно?
Ответы (2 шт):
Автор решения: Aleksandr Fetisov
→ Ссылка
Да вообще легко через питон)
import time
# установка таймера на 1 год (365 дней)
duration = 365 * 24 * 60 * 60 # в секундах
# время старта таймера
start_time = time.time()
while True:
# вычисляем сколько секунд осталось до окончания таймера
remaining_time = duration - (time.time() - start_time)
# выводим оставшееся время в консоль
print(f"Осталось {remaining_time} секунд.")
# ждем одну секунду
time.sleep(1)
# если время вышло, то выходим из бесконечного цикла
if remaining_time <= 0:
break
print("Таймер завершен.")
тут таймер ровно на 365 дней, если нужно большее кол-во дней, то увеличь
Автор решения: Leonid
→ Ссылка
А еще можно сделать так:
import datetime
import time
# Установка времени таймера на 1 год от текущего времени
target_time = datetime.datetime.now() + datetime.timedelta(days=365)
# Цикл для отображения оставшегося времени каждую секунду
while True:
# Разница между текущим временем и временем таймера
remaining_time = target_time - datetime.datetime.now()
# Если время вышло, выходим из цикла
if remaining_time.total_seconds() <= 0:
print("Время вышло!")
break
# Вывод оставшегося времени в секундах
print("\rОсталось {} секунд".format(int(remaining_time.total_seconds())), end="")
# Пауза на 1 секунду
time.sleep(1)