import datetime
date = datetime.datetime(2000,9,17)
for i in range(50):
date += datetime.timedelta(days=1)
print(date)
我想只打印2075-01-30表格中的最后一个日期而不是2075-01-30 00:00:00
答案 0 :(得分:1)
取消最后一行中的print语句
import datetime
date = datetime.datetime(2000,9,17)
for i in range(50):
date += datetime.timedelta(days=1)
print(date)
答案 1 :(得分:1)
为了不每次都打印日期,你只需要将print
移动到循环之外,就像Stephen Rauch解释的那样。
如果您只想打印日期而不是日期和时间,您可能实际上想要使用date
对象而不是datetime
对象:
date = datetime.date(2000,9,17)
for i in range(50):
date += datetime.timedelta(days=1)
print(date)
如果出于某种原因,您实际上想要使用datetime
进行中间计算(这可能会对像夏令时过渡这样的奇怪案例产生影响,这可能是您想过并想要的?),您可以改为仅在结尾处转换为date
,或使用strftime
打印您想要的任何格式:
date = datetime.datetime(2000,9,17)
for i in range(50):
date += datetime.timedelta(days=1)
print(date.strftime('%Y-%m-%d')
但如果没有,只需使用date
就可以了。
答案 2 :(得分:0)
这可以简单地完成:
import datetime as dt
date_str = dt.datetime(2000, 9, 17) + dt.timedelta(days=50)
print(date_str.strftime("%Y-%m-%d"))
2000-11-06