Python обратный отсчет даты и времени неверно рассчитывает оставшееся время - PullRequest
0 голосов
/ 06 апреля 2020
delta = datetime.now() - datetime(2020, 3, 24)
yeardif = round(delta.days/365)
yearRem = round(delta.days%365)
mondif = round(yearRem/30)
daydif = round(delta.days%365%30)

Код для таймера обратного отсчета. Переменная «delta» должна выводить разницу во времени в днях, используя

.days

, но что-то в уравнении неверно, потому что вывод неправильный.

Ответы [ 2 ]

0 голосов
/ 06 апреля 2020

Если вы смотрите на разницу во времени с точки зрения оставшегося времени, вам не нужно округлять значения, а вместо этого использовать floor ().

0 голосов
/ 06 апреля 2020

Код для таймера обратного отсчета. Переменная «delta» должна выводить разницу во времени в днях, используя .days

Если вы просто хотите разницу во времени в днях, это все, что вам нужно:

delta = datetime.now() - datetime(2020, 3, 24)
days = delta.days + delta.seconds / 86400

Это даст Вам 13,35866 дней (13 полных дней плюс 0,35866 дней). Это предпочтительнее деления на 30 и 365, поскольку этот метод учитывает разные дни в месяце и високосные годы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...