也许我不明白背后的意图relativedelta
,但是行为的不一致,即较小的子区间被折叠成较大的子区间,以便表示最小的子区间集似乎是不可取的。具体来说,几个月似乎会变成几年,但几天和几周仍然模棱两可(即天数 = 周数 * 7 + 剩余天数)。
from dateutil.parsers import parse as dparse
from dateutil.relativedelta import relativedelta as rdelta
start = dparse('12/3/15')
end = dparse('1/28/17')
rd = rdelta(end, start)
这里rd.years = 1
, rd.months = 1
, rd.weeks = 3
, 和rd.days = 25
.
这是为什么?我希望子间隔相互排斥。