例如:
from datetime import date
d1 = date(2008,8,15)
d2 = date(2008,9,15)
我正在寻找简单的代码来打印中间的所有日期:
2008,8,15
2008,8,16
2008,8,17
...
2008,9,14
2008,9,15
谢谢
以下是 Python 代码,用于打印两个日期之间的所有日期:
from datetime import date, timedelta
d1 = date(2008, 8, 15)
d2 = date(2008, 9, 15)
delta = d2 - d1
for i in range(delta.days + 1):
print(d1 + timedelta(days=i))
此代码的工作原理如下:
- 计算日期之间的差值:
-
delta = d2 - d1
计算d1
和d2
之间的差值(以天为单位),并将其存储在delta
变量中。 -
循环遍历日期范围:
-
for i in range(delta.days + 1):
循环从 0 到delta.days
(含)的数字,从而包含开始日期和结束日期。 -
计算并打印每个日期:
-
在循环的每次迭代中,
d1 + timedelta(days=i)
将i
天添加到d1
中,从而计算出当前日期。 -
然后,
print()
函数打印计算出的日期。