我想在維基數據API給出的日期之間進行日期比較。Python中的維基數據日期比較
起初,我雖然使用Python的日期時間模塊,但是我碰到了兩個問題:
- 維基數據處理跨越了數十億年過去還是在朱利安和公曆將來的日期,日期時間僅適用於年份1至9999之間的公曆日期。
- 當精度爲(9)年或更低時,月份和日期呈現爲「00-00」,而datetime.strptime不管理該日期。
例如,在此sample query約巴黎,這個日期可以轉換爲日期時間:
datetime.strptime("+1968-01-01T00:00:00Z","+%Y-%m-%dT%H:%M:%SZ")
datetime.datetime(1968, 1, 1, 0, 0)
這不由得:
datetime.strptime("+2012-00-00T00:00:00Z","+%Y-%m-%dT%H:%M:%SZ")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3.5/_strptime.py", line 510, in _strptime_datetime
tt, fraction = _strptime(data_string, format)
File "/usr/lib/python3.5/_strptime.py", line 343, in _strptime
(data_string, format))
ValueError: time data '+2012-00-00T00:00:00Z' does not match format '+%Y-%m-%dT%H:%M:%SZ'
且不說「-0300-00 -00T00:00:00Z「(公元前300年)
我不能簡單地使用年比較,因爲對於有關發生在普通呃之前的事情的項目a,在同一個負向年份可能有幾個日期。
我不太確定處理這個問題的最佳方法。是否有另一個我可以使用的庫?
你是什麼意思的日期比較? 「+ 2012-00-00T00:00:00Z」和「+ 2012-01-01T00:00:00Z」之間的比較結果是什麼? –
日期是對索賠使用的限定詞。現在,我想要最近的人口,但我希望該方法更通用。 –