Python如何计算两个日期之间的天数?

3

我在用Python时遇到了麻烦,希望能够有一种简单明了的方法来计算两个日期之间相隔的天数。
例如,今天是12月22日,我想知道在2月15日之前还有多少天。这两个日期相差55天
(我选了这个例子因为它涵盖了两个不同的年份和多个月份)
我写的代码非常混乱,而且有一半的时间都不能正常工作,所以我有点不好意思展示它。
感谢您提供的任何帮助。
提前致谢


使用datetime模块 - 请参见https://dev59.com/jnVC5IYBdhLWcg3w51hv - dannymilsom
2个回答

13

更简单的实现:

    import datetime

    d1 = datetime.datetime(2013,12,22)
    d2 = datetime.datetime(2014,2,15)
    (d2-d1).days

3
只需创建两个日期实例并进行减法运算,您将得到一个带有给定信息的timedelta对象。
>>> from datetime import date
>>> by = date(2013, 12, 22)
>>> since = date(2014, 2, 15)
>>> res = since - by
>>> res.days
55

一些与变量相关的示例:

>>> variables_tuple = (2013, 12, 22)
>>> by = date(*variables_tuple)
>>> by.year
2013
>>> until_year = 2014
>>> until = date(until_year, 2, 15) 

在编写代码时,日期是否可以作为变量放在括号中,而不是直接输入?并且这个方法是否适用于闰年? - TheD0ubleT
是的,您可以在那里使用变量,而且是的,它适用于闰年。 - yedpodtrzitko

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接