計算時差

timedelta 模組可以方便地計算時間差異:

from datetime import datetime, timedelta
now = datetime.now()
then = datetime(2016, 5, 23)     # datetime.datetime(2016, 05, 23, 0, 0, 0)

建立新的 datetime 物件時,指定時間是可選的

delta = now-then

delta 屬於 timedelta

print(delta.days)
# 60
print(delta.seconds)
# 40826

為了獲得 n 天和之前的日期,我們可以使用:

n 天后:

def get_n_days_after_date(date_format="%d %B %Y", add_days=120):

    date_n_days_after = datetime.datetime.now() + timedelta(days=add_days)
    return date_n_days_after.strftime(date_format)

日期前一天:

 def get_n_days_before_date(self, date_format="%d %B %Y", days_before=120):

        date_n_days_ago = datetime.datetime.now() - timedelta(days=days_before)
        return date_n_days_ago.strftime(date_format)