2016-11-10 52 views
1

所以我試圖找出一種方法來轉換格式爲「dd/mm/yyyy」的正常日期(例如:31/12/2016)。以數字編號表示日期

我想找到一種方法將此日期轉換爲唯一的數字,以便我可以將其重新轉換回來。

例如我認爲sum=day+month*12 + year*365的號碼,然後:

(sum % 365)/12... 

,但它不工作對每個statment。所以有什麼想法?

+0

店年,日和月爲字符串,它Concat的,將其轉換爲int,當你想重新轉換它只是同路倒退。 – Lehue

回答

0

不要自己處理字符串。而是使用稱爲datetime的模塊。這是一個非常好的答案,希望能夠滿足你需要做的事情。 Converting string into datetime

例如,你的情況,你會需要以下

import datetime 
your_date = datetime.datetime.strptime("31/12/2016", "%d/%m/%Y") 

那麼這篇文章How to convert datetime to integer in python解釋瞭如何把它變成一個整數,但在回答說,這通常是一個壞主意。

0

您可以使用日期時間模塊提取日,月,年,然後只要你想使用。

In [9]: (y, m, d) = str(datetime.date.today()).split('-')[:3] 

In [10]: y, m, d 
Out[10]: ('2016', '11', '10') 

輸出爲字符串格式,可以轉換爲整數。

In [11]: int(y), int(m), int(d) 
Out[11]: (2016, 11, 10)