Подтвердить что ты не робот

Вычитайте секунды из datetime в python

У меня есть переменная int, которая на самом деле секунд (позволяет вызывать это количество секунд X). Мне нужно получить в качестве результата текущую дату и время (в формате даты и времени) минус X секунды.

Пример

Если X равно 65, а текущая дата 2014-06-03 15:45:00, тогда мне нужно получить результат 2014-06-03 15:43:45.

Окружающая среда

Я делаю это на Python 3.3.3, и я знаю, что я мог бы использовать модуль datetime, но пока у меня не было никакого успеха.

4b9b3361

Ответ 1

Использование модуля datetime действительно:

import datetime

X = 65
result = datetime.datetime.now() - datetime.timedelta(seconds=X)

Вы должны прочитать документацию этого пакета, чтобы узнать, как его использовать!

Ответ 2

>>> from datetime import datetime, timedelta
>>> now = datetime.now()
>>> now
datetime.datetime(2014, 6, 3, 22, 55, 9, 680637)
>>> now - timedelta(seconds=15)
datetime.datetime(2014, 6, 3, 22, 54, 54, 680637)

Это решение для основной библиотеки, как правило, для этой задачи, я предпочитаю использовать сторонний класс с dateutil.relativedelta, он имеет больше параметров и большая гибкость.