Python中两个日期之间的差异

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (32)

我有两个不同的日期,我想知道他们之间的日子的区别。日期的格式是YYYYY-MM-DD.

我有一个函数,可以将给定的数字加或减到日期:

def addonDays(a, x):
   ret = time.strftime("%Y-%m-%d",time.localtime(time.mktime(time.strptime(a,"%Y-%m-%d"))+x*3600*24+3600))      
   return ret

其中A是日期,x是我想加的天数。结果是另一个约会。

我需要一个函数,在这里我可以给出两个日期,结果将是一个整数,日期差在天。

提问于
用户回答回答于

使用-得到两者之间的区别datetime对象,并采取days会员。

from datetime import datetime

def days_between(d1, d2):
    d1 = datetime.strptime(d1, "%Y-%m-%d")
    d2 = datetime.strptime(d2, "%Y-%m-%d")
    return abs((d2 - d1).days)
用户回答回答于

另一个简短的解决办法是:

from datetime import date

def diff_dates(date1, date2):
    return abs(date2-date1).days

def main():
    d1 = date(2013,1,1)
    d2 = date(2013,9,13)
    result1 = diff_dates(d2, d1)
    print '{} days between {} and {}'.format(result1, d1, d2)
    print ("Happy programmer's day!")

main()

扫码关注云+社区

领取腾讯云代金券