Python计算时差

示例

该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天之前的日期,我们可以使用:

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)

日期的前n天:

 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)