122 Мне нужно создать объект DateTime, представляющий текущее время минус 15 минут. python datetime Уилл Карран источник Связанный вопрос: stackoverflow.com/questions/100210/… spade78 Ответы: 233 import datetime, а затем волшебные вещи timedelta: In [63]: datetime.datetime.now() Out[63]: datetime.datetime(2010, 12, 27, 14, 39, 19, 700401) In [64]: datetime.datetime.now() - datetime.timedelta(minutes=15) Out[64]: datetime.datetime(2010, 12, 27, 14, 24, 21, 684435) Spacedman источник 1 NB, в Python 3 вам нужно будет передать часовой пояс, чтобы now()избежать ошибки при вычитании времени с datetime.datetime.now(datetime.timezone.utc) учетом 1 @nornagon, который здесь совсем не применим; не имеет значения, осведомлен ли объект datetime или наивен, вычитание timedelta работает независимо. Мартейн Питерс 35 datetime.datetime.now() - datetime.timedelta(minutes=15) eduffy источник 11 Это просто то, что нужно делать: datetime.datetime.now() - datetime.timedelta(minutes = 15) timedeltas специально разработаны, чтобы позволить вам вычитать или добавлять дельты (различия) к datetimes. источник 7 from datetime import timedelta datetime.datetime.now() - datetime.timedelta(0, 900) Actually 900 is in seconds. Which is equal to 15 minutes. `15*60 = 900` Tauquir источник Ваш импорт не соответствует коду; вы импортируете, timedeltaно затем используете datetimeатрибуты. Либо импортируйте модуль, либо добавьте тип. Мартейн Питерс 7 Если вы хотите увидеть больше примеров, я предоставил два способа сделать это как на несколько минут, так и на годы и часы: import datetime print(datetime.datetime.now()) print(datetime.datetime.now() - datetime.timedelta(minutes = 15)) print(datetime.datetime.now() + datetime.timedelta(minutes = -15)) print(datetime.timedelta(hours = 5)) print(datetime.datetime.now() + datetime.timedelta(days = 3)) print(datetime.datetime.now() + datetime.timedelta(days = -9)) print(datetime.datetime.now() - datetime.timedelta(days = 9)) Получаю следующие результаты: 2016-06-03 16:04:03.706615 2016-06-03 15:49:03.706622 2016-06-03 15:49:03.706642 5:00:00 2016-06-06 16:04:03.706665 2016-05-25 16:04:03.706676 2016-05-25 16:04:03.706687 2016-06-03 16:04:03.706716 Мона Джалал источник 6 Используйте DateTime в дополнение к timedeltaобъекту http://docs.python.org/library/datetime.html datetime.datetime.now()-datetime.timedelta(minutes=15) Hut8 источник 4 datetime.datetime.now() - datetime.timedelta(0, 15 * 60) timedeltaэто «смена времени». Для первого параметра требуются дни, а для второго - секунды. 15 * 60секунды - 15 минут. Дональд Майнер источник 1 Если вы используете time.time()и хотите получить метку времени в качестве вывода Просто используйте CONSTANT_SECONDS = 900 # time in seconds (900 seconds = 15 min) current_time = int(time.time()) time_before_15_min = current_time - CONSTANT_SECONDS Вы можете изменить 900 секунд на необходимое вам время. Вивек Дхамеча источник 1 только приведенный ниже код в Python 3.7 работал у меня from datetime import datetime,timedelta print(datetime.now()-timedelta(seconds=900)) Anandkumar источник Это не отличается от гораздо более старых ответов здесь. Мартейн Питерс
233 import datetime, а затем волшебные вещи timedelta: In [63]: datetime.datetime.now() Out[63]: datetime.datetime(2010, 12, 27, 14, 39, 19, 700401) In [64]: datetime.datetime.now() - datetime.timedelta(minutes=15) Out[64]: datetime.datetime(2010, 12, 27, 14, 24, 21, 684435) Spacedman источник 1 NB, в Python 3 вам нужно будет передать часовой пояс, чтобы now()избежать ошибки при вычитании времени с datetime.datetime.now(datetime.timezone.utc) учетом 1 @nornagon, который здесь совсем не применим; не имеет значения, осведомлен ли объект datetime или наивен, вычитание timedelta работает независимо. Мартейн Питерс 35 datetime.datetime.now() - datetime.timedelta(minutes=15) eduffy источник 11 Это просто то, что нужно делать: datetime.datetime.now() - datetime.timedelta(minutes = 15) timedeltas специально разработаны, чтобы позволить вам вычитать или добавлять дельты (различия) к datetimes. источник 7 from datetime import timedelta datetime.datetime.now() - datetime.timedelta(0, 900) Actually 900 is in seconds. Which is equal to 15 minutes. `15*60 = 900` Tauquir источник Ваш импорт не соответствует коду; вы импортируете, timedeltaно затем используете datetimeатрибуты. Либо импортируйте модуль, либо добавьте тип. Мартейн Питерс 7 Если вы хотите увидеть больше примеров, я предоставил два способа сделать это как на несколько минут, так и на годы и часы: import datetime print(datetime.datetime.now()) print(datetime.datetime.now() - datetime.timedelta(minutes = 15)) print(datetime.datetime.now() + datetime.timedelta(minutes = -15)) print(datetime.timedelta(hours = 5)) print(datetime.datetime.now() + datetime.timedelta(days = 3)) print(datetime.datetime.now() + datetime.timedelta(days = -9)) print(datetime.datetime.now() - datetime.timedelta(days = 9)) Получаю следующие результаты: 2016-06-03 16:04:03.706615 2016-06-03 15:49:03.706622 2016-06-03 15:49:03.706642 5:00:00 2016-06-06 16:04:03.706665 2016-05-25 16:04:03.706676 2016-05-25 16:04:03.706687 2016-06-03 16:04:03.706716 Мона Джалал источник 6 Используйте DateTime в дополнение к timedeltaобъекту http://docs.python.org/library/datetime.html datetime.datetime.now()-datetime.timedelta(minutes=15) Hut8 источник 4 datetime.datetime.now() - datetime.timedelta(0, 15 * 60) timedeltaэто «смена времени». Для первого параметра требуются дни, а для второго - секунды. 15 * 60секунды - 15 минут. Дональд Майнер источник 1 Если вы используете time.time()и хотите получить метку времени в качестве вывода Просто используйте CONSTANT_SECONDS = 900 # time in seconds (900 seconds = 15 min) current_time = int(time.time()) time_before_15_min = current_time - CONSTANT_SECONDS Вы можете изменить 900 секунд на необходимое вам время. Вивек Дхамеча источник 1 только приведенный ниже код в Python 3.7 работал у меня from datetime import datetime,timedelta print(datetime.now()-timedelta(seconds=900)) Anandkumar источник Это не отличается от гораздо более старых ответов здесь. Мартейн Питерс
11 Это просто то, что нужно делать: datetime.datetime.now() - datetime.timedelta(minutes = 15) timedeltas специально разработаны, чтобы позволить вам вычитать или добавлять дельты (различия) к datetimes. источник
7 from datetime import timedelta datetime.datetime.now() - datetime.timedelta(0, 900) Actually 900 is in seconds. Which is equal to 15 minutes. `15*60 = 900` Tauquir источник Ваш импорт не соответствует коду; вы импортируете, timedeltaно затем используете datetimeатрибуты. Либо импортируйте модуль, либо добавьте тип. Мартейн Питерс 7 Если вы хотите увидеть больше примеров, я предоставил два способа сделать это как на несколько минут, так и на годы и часы: import datetime print(datetime.datetime.now()) print(datetime.datetime.now() - datetime.timedelta(minutes = 15)) print(datetime.datetime.now() + datetime.timedelta(minutes = -15)) print(datetime.timedelta(hours = 5)) print(datetime.datetime.now() + datetime.timedelta(days = 3)) print(datetime.datetime.now() + datetime.timedelta(days = -9)) print(datetime.datetime.now() - datetime.timedelta(days = 9)) Получаю следующие результаты: 2016-06-03 16:04:03.706615 2016-06-03 15:49:03.706622 2016-06-03 15:49:03.706642 5:00:00 2016-06-06 16:04:03.706665 2016-05-25 16:04:03.706676 2016-05-25 16:04:03.706687 2016-06-03 16:04:03.706716 Мона Джалал источник 6 Используйте DateTime в дополнение к timedeltaобъекту http://docs.python.org/library/datetime.html datetime.datetime.now()-datetime.timedelta(minutes=15) Hut8 источник 4 datetime.datetime.now() - datetime.timedelta(0, 15 * 60) timedeltaэто «смена времени». Для первого параметра требуются дни, а для второго - секунды. 15 * 60секунды - 15 минут. Дональд Майнер источник 1 Если вы используете time.time()и хотите получить метку времени в качестве вывода Просто используйте CONSTANT_SECONDS = 900 # time in seconds (900 seconds = 15 min) current_time = int(time.time()) time_before_15_min = current_time - CONSTANT_SECONDS Вы можете изменить 900 секунд на необходимое вам время. Вивек Дхамеча источник 1 только приведенный ниже код в Python 3.7 работал у меня from datetime import datetime,timedelta print(datetime.now()-timedelta(seconds=900)) Anandkumar источник Это не отличается от гораздо более старых ответов здесь. Мартейн Питерс
7 Если вы хотите увидеть больше примеров, я предоставил два способа сделать это как на несколько минут, так и на годы и часы: import datetime print(datetime.datetime.now()) print(datetime.datetime.now() - datetime.timedelta(minutes = 15)) print(datetime.datetime.now() + datetime.timedelta(minutes = -15)) print(datetime.timedelta(hours = 5)) print(datetime.datetime.now() + datetime.timedelta(days = 3)) print(datetime.datetime.now() + datetime.timedelta(days = -9)) print(datetime.datetime.now() - datetime.timedelta(days = 9)) Получаю следующие результаты: 2016-06-03 16:04:03.706615 2016-06-03 15:49:03.706622 2016-06-03 15:49:03.706642 5:00:00 2016-06-06 16:04:03.706665 2016-05-25 16:04:03.706676 2016-05-25 16:04:03.706687 2016-06-03 16:04:03.706716 Мона Джалал источник
6 Используйте DateTime в дополнение к timedeltaобъекту http://docs.python.org/library/datetime.html datetime.datetime.now()-datetime.timedelta(minutes=15) Hut8 источник
4 datetime.datetime.now() - datetime.timedelta(0, 15 * 60) timedeltaэто «смена времени». Для первого параметра требуются дни, а для второго - секунды. 15 * 60секунды - 15 минут. Дональд Майнер источник
1 Если вы используете time.time()и хотите получить метку времени в качестве вывода Просто используйте CONSTANT_SECONDS = 900 # time in seconds (900 seconds = 15 min) current_time = int(time.time()) time_before_15_min = current_time - CONSTANT_SECONDS Вы можете изменить 900 секунд на необходимое вам время. Вивек Дхамеча источник
1 только приведенный ниже код в Python 3.7 работал у меня from datetime import datetime,timedelta print(datetime.now()-timedelta(seconds=900)) Anandkumar источник Это не отличается от гораздо более старых ответов здесь. Мартейн Питерс
Ответы:
import datetime, а затем волшебные вещи timedelta:
источник
now()
избежать ошибки при вычитании времени сdatetime.datetime.now(datetime.timezone.utc)
источник
Это просто то, что нужно делать:
timedelta
s специально разработаны, чтобы позволить вам вычитать или добавлять дельты (различия) кdatetime
s.источник
источник
timedelta
но затем используетеdatetime
атрибуты. Либо импортируйте модуль, либо добавьте тип.Если вы хотите увидеть больше примеров, я предоставил два способа сделать это как на несколько минут, так и на годы и часы:
Получаю следующие результаты:
источник
Используйте DateTime в дополнение к
timedelta
объекту http://docs.python.org/library/datetime.htmldatetime.datetime.now()-datetime.timedelta(minutes=15)
источник
datetime.datetime.now() - datetime.timedelta(0, 15 * 60)
timedelta
это «смена времени». Для первого параметра требуются дни, а для второго - секунды.15 * 60
секунды - 15 минут.источник
Если вы используете
time.time()
и хотите получить метку времени в качестве выводаПросто используйте
Вы можете изменить 900 секунд на необходимое вам время.
источник
только приведенный ниже код в Python 3.7 работал у меня
источник