その他は十分に答えよりも、すでに多くを持っていないので、この回答に投票する必要。
(Mark Byersのanswerに示されている手法を使用して+1)
import datetime as dt
def within_days_from_today(the_date, num_days=7):
'''
return True if date between today and `num_days` from today
return False otherwise
>>> today = dt.date.today()
>>> within_days_from_today(today - dt.timedelta(days=1), num_days=3)
False
>>> within_days_from_today(dt.date.today(), num_days=3)
True
>>> within_days_from_today(today + dt.timedelta(days=1), num_days=3)
True
>>> within_days_from_today(today + dt.timedelta(days=2), num_days=3)
True
>>> within_days_from_today(today + dt.timedelta(days=3), num_days=3)
True
>>> within_days_from_today(today + dt.timedelta(days=4), num_days=3)
False
'''
lower_limit = dt.date.today()
upper_limit = lower_limit + dt.timedelta(days=num_days)
if lower_limit <= the_date <= upper_limit:
return True
else:
return False
if __name__ == "__main__":
import doctest
doctest.testmod()
+1私よりもはるかに読みやすい。 – Thomas
Mark Byersに与えられたポイント。私は同意し、より読みやすいが、トーマスの答えにも同様に有効である。あなたがた両方に感謝します。私は私の日記に両方の方法を加えました。完璧な意味合いを持つ。 – Flowpoke
ありがとう..パーフェクト..まさに私が探していたもの.. !! –