Как вы вычитаете текущее время из времени пять минут назад? - PullRequest
0 голосов
/ 29 апреля 2019

У меня есть время из пяти минут назад, используя datetime.time.now(), и мне нужно знать, какое было бы время, если бы я вычел это время из текущего времени.

Попытка 1 - не работает:

from datetime import datetime, timedelta

time1 = datetime.now()
time2 = datetime.now() + timedelta(minutes=5)

print(time1 - time2)

Это дало мне «-1 день, 23: 54: 59.999987».

Попробуй 2 - сработало, но есть ли лучший способ?:

time1 = datetime.now()
time2 = datetime.now() + timedelta(minutes=5)

print(str(time1 - time2).split(',')[1])

Это дало мне желаемый результат, но есть ли метод, кроме манипуляции со строками?

Ответы [ 2 ]

2 голосов
/ 29 апреля 2019

Вы хотели посоветоваться, как использовать time объект?

Хорошо, если вы хотите указать формат строкового представления своего времени, просто используйте strftime

Пример ниже:

from datetime import datetime, timedelta

time1 = datetime.now()
time2 = datetime.now() + timedelta(minutes=5)

print((time1 - time2).strftime('%H:%M:%S'))
0 голосов
/ 29 апреля 2019

Предполагая, что вы хотите время 5 минут назад, вы можете использовать timedelta без каких-либо манипуляций со строками:

five_min_ago = datetime.datetime.now() - datetime.timedelta(minutes = 5)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...