время python + эквивалент timedelta

Я пытаюсь сделать что-то вроде этого:

time() + timedelta(hours=1) 

однако Python не позволяет этого , по-видимому, по уважительной причине.

  • Получить путь из открытого файла в Python
  • Python: значение опции -u?
  • Исправлено для python
  • Скопировать весь файл JPG в каталог в другой каталог на Python?
  • Динамическая загрузка кода приложения Python из базы данных в Google App Engine
  • Python __str__ и списки
  • У кого-то есть простая работа?

    Связанный:

    • Каков стандартный способ добавления N секунд в datetime.time в Python?

  • Преобразование списка из 3 элементов в словарь
  • движок Google; загрузка в blobstore дает ошибку 404
  • Нужна помощь, аппроксимирующая синусоидальную функцию в python с использованием серии Taylor
  • Оператор «is» не работает должным образом
  • Конфигурационный файл Python: любая рекомендация формата файла? Формат INI по-прежнему подходит? Кажется довольно старой школой
  • Получить имя текущего скрипта с помощью Python
  • 5 Solutions collect form web for “время python + эквивалент timedelta”

    Решение находится в ссылке, которую вы указали в своем вопросе:

     datetime.combine(date.today(), time()) + timedelta(hours=1) 

    Полный пример:

     from datetime import date, datetime, time, timedelta dt = datetime.combine(date.today(), time(23, 55)) + timedelta(minutes=30) print dt.time() 

    Вывод:

     00:25:00 

    Если стоит добавить другой файл / зависимость к вашему проекту, я только что написал небольшой класс, который расширяет datetime.time с возможностью делать арифметику. Если вы пройдете за полночь, он просто обернется вокруг:

     >>> from nptime import nptime >>> from datetime import timedelta >>> afternoon = nptime(12, 24) + timedelta(days=1, minutes=36) >>> afternoon nptime(13, 0) >>> str(afternoon) '13:00:00' 

    Он доступен от PyPi как nptime («не-педантичное время»), или на GitHub: https://github.com/tgs/nptime

    Документация находится по адресу http://tgs.github.io/nptime/

    Это немного противно, но:

     from datetime import datetime, timedelta now = datetime.now().time() # Just use January the first, 2000 d1 = datetime(2000, 1, 1, now.hour, now.minute, now.second) d2 = d1 + timedelta(hours=1, minutes=23) print d2.time() 

    Временное решение:

     t = time() t2 = time(t.hour+1, t.minute, t.second, t.microsecond) 

    Вы также можете опустить микросекунды, если вам не нужна такая точность.

    Вы можете изменить время () на теперь (), чтобы оно работало

     from datetime import datetime, timedelta datetime.now() + timedelta(hours=1) 
    Python - лучший язык программирования в мире.