【发布时间】:2015-05-28 17:48:24
【问题描述】:
我有这个关于 python 日期的请求... 我想知道 N_YEARS 前的确切日期。 所以,我尝试了这个简单的代码:
years_count = N_YEARS * 365
today = datetime.datetime.today()
birthday_date = today + datetime.timedelta(days=-years_count)
但这是不正确的。 示例:
Today: 28/05/2015 (DD/MM/YYYY)
N_YEARS: 18
Result: 1997-06-01 (YYYY/MM/DD) **17 Years, 11 Months e 27 Days**
timedelta 函数正确 by 不正确以这种方式计算天数:N_YEARS * 365
我该如何解决?
【问题讨论】:
-
N_YEARS * 365确实不正确。听说过闰年吗? -
一年不是一个精确的单位。有些年份有 365 天,有些年份有 366 天。
-
这取决于您所说的恰好 N 年是什么意思。我想说从你的日期减去 N 年。 1000 年不 等于 365000 天!更像 365260,但要复杂得多。