2012-09-18 16 views

Odpowiedz

202

Zastosowanie datetime.replace:

from datetime import datetime 
date = datetime.strptime('26 Sep 2012', '%d %b %Y') 
newdate = date.replace(hour=11, minute=59) 
+6

tak wygodne, ale tak łatwo przeoczyć. –

+0

Dzięki za szybką odpowiedź! :) Ciekawe, czy istnieje sposób na zrobienie tego bez dodatkowej zmiennej daty? (Jestem początkującym pytonem) – user1678031

+1

Tak, po prostu wykonaj 'date = datetime.strptime (" 26 września 2012 ","% d% b% Y "). Replace (godzina = 11, minuta = 59)'. Użyłem dodatkowej zmiennej, aby linia nie była zbyt długa :) – nneonneo

8

datetime.replace() zapewni najlepsze opcje. Zapewnia także możliwość wymiany dnia, roku i miesiąca.

Załóżmy, że mamy datetime obiekt i data jest reprezentowany jako: "2017-05-04"

>>> from datetime import datetime 
>>> date = datetime.strptime('2017-05-04',"%Y-%m-%d") 
>>> print(date) 
2017-05-04 00:00:00 
>>> date = date.replace(minute=59, hour=23, second=59, year=2018, month=6, day=1) 
>>> print(date) 
2018-06-01 23:59:59 
Powiązane problemy