私はこのようなコードを持っています:
import time
from datetime import date
startyear = raw_input("start year: ")
startmonth = raw_input("start month: ")
startday = raw_input("start day: ")
endyear = raw_input("end year: ")
endmonth = raw_input("end month: ")
endday = raw_input("end day: ")
startdate = date(int(startyear), int(startmonth), int(startday))
while startdate < date(int(endyear), int(endmonth), int(endday)):
print startdate
startdate = startdate.replace(day=startdate.day + 1)
このコードが行うことは次の
とおりです。 1.手動入力で開始日と終了日を取得します
2.それらの間の日付のリストを生成します
しかし、問題は、たとえば次のように日付を設定すると
startdate: 2012-10-28
enddate: 2012-11-4
、出力が次のようになることです。
2012-10-28
2012-10-29
2012-10-30
2012-10-31
ValueError: day is out of range for month
出力を次のようにしたい:
2012-10-28
2012-10-29
2012-10-30
2012-10-31
2012-11-01
2012-11-02
2012-11-03
2012-11-04
だから私は日付が月を通過することを望みます。助言がありますか?どんな助けでも本当に素晴らしいでしょう。