2016-04-28 114 views
0

date是這種格式%Y-%m-%d %H:%M:%S [此爲24小時]。我想這個日期轉換在12小時內是這樣的 - >%Y-%m-%d %H:%M:%S %pvice-versa。 我怎樣才能做到這一點?感謝名單!轉換爲24小時的日期/時間到12小時格式,反之亦然

+0

想必你有字符串輸入,並希望字符串輸出?你有沒有嘗試過任何東西,你*已*有字符串格式。 ('%Y-%m-%d%I:%M:%S%'%s%d%h%% - %d%H:%M:%S' –

+0

'datetime.datetime.strptime p')' –

回答

2

負載串入經由strptime()日期時間對象,然後經由strftime()所需格式轉儲:

>>> from datetime import datetime 
>>> d = datetime.now().strftime("%Y-%m-%d %H:%M:%S") 
>>> d # d is a string 
'2016-04-28 07:46:32' 
>>> datetime.strptime(d, "%Y-%m-%d %H:%M:%S").strftime("%Y-%m-%d %I:%M:%S %p") 
'2016-04-28 07:46:32 AM' 

注意,這裏的%I12-hour clock

+0

謝謝! @ alecxe..反之亦然。我的意思是再次想要12小時的24小時? – Pranay

+0

@Pranay使用'%Y-%m-%d%I:%M:%S%p'和'strftime'使用'%Y-%m-%d%H :%M:%S'。 – alecxe

+0

:-)謝謝你.....! – Pranay

1

24小時至12小時

>>> from datetime import datetime 
>>> datetime.strptime('2016-05-25 13:45:56', '%Y-%m-%d %H:%M:%S') 
datetime.datetime(2016, 5, 25, 13, 45, 56) 
>>> dt=datetime.strptime('2016-05-25 13:45:56', '%Y-%m-%d %H:%M:%S') 
>>> dt.strftime('%Y-%m-%d %I:%M:%S %p') 
'2016-05-25 01:45:56 PM' 
>>> 

12小時至24小時

>>> dt=datetime.strptime('2016-05-25 01:45:56 PM', '%Y-%m-%d %I:%M:%S %p') 
>>> dt 
datetime.datetime(2016, 5, 25, 13, 45, 56) 
>>> dt.strftime('%Y-%m-%d %H:%M:%S') 
'2016-05-25 13:45:56' 
>>> 
+0

謝謝.......! – Pranay

+0

如何將12:00 AM這樣的東西轉換成00:00:00? –

+0

@chanchalpardeshi你可以使用像'dt = datetime.strptime('12:00 AM','%I:%M%p')'然後'dt.strftime('%H:%M:%S ')'會打印''00:00:00'' – ritesht93

相關問題