为什么它只是打印今天的日期而不是过去五年的日期



为什么它只打印今天的日期而不是过去五年的日期?

from datetime import date
from datetime import timedelta
today = date.today()
for i in range(1826):
res = today - timedelta(days=i)
f1 = res.strftime("%d-%m-%Y")
f2 = res.strftime("%m-%d-%y")
f3 = res.strftime("%d-%b-%y")
f4 = res.strftime("%d-%B-%Y")
print(f1)
print(f2)
print(f3)
print(f4)

输出

05-08-2012
08-05-12
05-Aug-12
05-August-2012

将打印函数放在 for 循环中。

你需要将print函数放入循环中:

for i in range(1826):
res = today - timedelta(days=i)
f1 = res.strftime("%d-%m-%Y")
f2 = res.strftime("%m-%d-%y")
f3 = res.strftime("%d-%b-%y")
f4 = res.strftime("%d-%B-%Y")
print(f1)
print(f2)
print(f3)
print(f4)

虽然你可以改为:

for i in range(1826):
res = today - timedelta(days=i)
print(res.strftime("%d-%m-%Y"))
print(res.strftime("%m-%d-%y"))
print(res.strftime("%d-%b-%y"))
print(res.strftime("%d-%B-%Y"))

您的打印语句在 for 循环中没有缩进,因此您只得到最后一个结果。

相关内容

最新更新