2015-09-30 91 views
1

datetime是否有MIN常數?是否有比較小於任何有效datetime.datetime(...)的對象?

我需要它來表示資源的到期日期,並且我希望有一個datetime表示「總是過期」作爲默認值(而不是None,因此無論如何我都可以使用相同的到期比較)。

所以現在我使用datetime.datetime(datetime.MINYEAR,1,1,0,0,tzusc())作爲我的MIN datetime,但我想知道是否有其他方法來表示「儘可能低的時間」(即使它不是datetime)。

+2

*開始時間*的定義是什麼? –

+0

您可以使用['datetime.datetime.fromordinal(1)'](https://docs.python.org/2/library/datetime.html#datetime.datetime.fromordinal)或'fromtimestamp',如果您的其他人日期將在1970年後。 – jonrsharpe

+2

['datetime.datetime.min'](https://docs.python.org/2/library/datetime.html#datetime.datetime.min) –

回答

0

你可以使用time.gmtime(0)這是一個時代。

Time Documentation

曆元是時間開始,在此點。當年的1月1日,0時,「時代以來的時間」爲零。對於Unix,這個時代是1970年。要了解這個時代是什麼,請看gmtime(0)。

+0

在時代之前有日期。 – ecerulm

0

datetime.datetime.fromtimestamp(0)它會爲您提供:

datetime.datetime(1970, 1, 1, 1, 0) 

返回對應的POSIX時間戳本地日期,比如是了time.time返回 ()。如果時間戳 超出了平臺C localtime() 函數支持的值範圍,則可能會引發ValueError。這種情況通常會限制在從1970年到2009年的 到2038年之間。請注意,在非POSIX系統中,其時間戳概念中包含閏秒 ,閏秒由timestamp()中的 忽略。