2017-08-04 20 views
-2

今日は今日の日付で、過去5年の日付ではないのはなぜですか?今日の日付は今日の日付で、最後の日付は5年ではない

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 
+3

あなたのprint文は、あなたのループの外にあるので、 – wpercy

答えて

1

あなたがループにあなたの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")) 
2

ためのループ内の印刷機能を置きます。

1

あなたのprintステートメントはforループで字下げされていないので、最後の結果しか得られません。

関連する問題