Как изменить datetime.datetime.hour в Python?

Я хочу рассчитать секунды между сегодняшним днем ​​и завтра 12:00. Таким образом, мне нужно получить завтра 12:00 объект datetime .

Это псевдокод:

 today_time = datetime.datetime.now() tomorrow = today_time + datetime.timedelta(days = 1) tomorrow.hour = 12 result = (tomorrow-today_time).total_seconds() 

Но это вызовет эту ошибку:

 AttributeError: attribute 'hour' of 'datetime.datetime' objects is not writable 

Как я могу изменить час или как я могу получить datetime объект datetime 12:00?

2 Solutions collect form web for “Как изменить datetime.datetime.hour в Python?”

Используйте метод replace для создания нового объекта datetime на основе существующего:

 tomorrow = tomorrow.replace(hour=12) 

Возвращает дату и время с теми же атрибутами, за исключением тех атрибутов, которые присваиваются новым значениям, в зависимости от того, какие аргументы ключевого слова указаны. Обратите внимание, что tzinfo=None может быть указано для создания наивного datetime из tzinfo=None дата-времени без преобразования данных даты и времени.

Попробуй это:

 tomorrow = datetime.datetime(tomorrow.year, tomorrow.month, tomorrow.day, 12, 0, 0) 
  • Преобразовать объект datetime в определенный часовой пояс в эпоху секунд в этот часовой пояс
  • Python ImportError для strptime в spyder для Windows 7
  • SQLAlchemy DateTime часовой пояс
  • СинтаксисError: недопустимый токен в datetime.datetime (2012,05,22,09,03,41)?
  • Использовать datetime.strftime () до 1900 года? («Требуется год> = 1900»)
  • Сравните строку в формате HH: MM ко времени теперь в python
  • Какая была полночь вчера как эпоха?
  • Datetime to filetime (Python)
  •  
    Interesting Posts for Van-Lav
    Python - лучший язык программирования в мире.