【发布时间】:2018-05-28 05:34:15
【问题描述】:
我想写一个函数,它接受两个日期条件。事情是这样的:假设我有两个日期,DATE1 = 30-06-2018 和 DATE2 = 30-12-2019,以及一个称为频率的变量(可以是 6 或 4 或 1)。
我需要计算这两个 DATE1 和 DATE2 之间的频率日期。如果频率为 6,则 DATE1 应添加 6 个月,直到它不大于 DATE2,即
if frq == 6:
Date_11 = DATE1 + relativedelta(months=+6)
Date_12 = Date_11 + relativedelta(months=+6)
Date_13 = Date_12 + relativedelta(months=+6)
Print(date_11,date_12,date_13)
你可以看到我在 Date_13 上停下来,因为它不能超过这个。因为 Date_13 需要小于 DATE2。如果频率是 4,我应该每 4 个月添加一次,
if frq == 4:
Date_11 = DATE1 + relativedelta(months=+4)
Date_12 = Date_11 + relativedelta(months=+4)
Date_13 = Date_12 + relativedelta(months=+4)
Date_14 = Date_13 + relativedelta(months=+4)
Print(date_11,date_12,date_13,date_14)
在这里我停止使用 Date_14,因为 Date_15 将大于 DATE2。
有人可以建议我如何使用 if 和 for 以及两个条件编写一个循环吗?
【问题讨论】:
标签: python python-3.x datetime for-loop