有什么区别datetime.timedelta http://docs.python.org/library/datetime.html#timedelta-objects(来自Python的标准库)和dateutil.relativedelta.relativedelta http://labix.org/python-dateutil当只工作几天时?
据我所理解,timedelta
仅支持天(和周),而relativedelta
添加了对以年、月、周或日定义的期间的支持,以及定义年、月或日的绝对值。(请记住,就这个问题而言,我不必担心小时、分钟或秒)
考虑到我只与datetime.date http://docs.python.org/library/datetime.html#date-objects对象,并且只对由天数定义的时间段感兴趣,两者之间有什么区别timedelta
and relativedelta
?有什么区别吗?
from datetime import date, timedelta
from dateutil.relativedelta import relativedelta
i = -1 # This could have been any integer, positive or negative
someday = date.today()
# Is there any difference between these two lines?
otherday = someday + timedelta(days=i)
otherday = someday + relativedelta(days=i)
dateutil
是python标准的扩展包datetime
模块。正如您所说,它提供了额外的功能,例如以大于一天的单位表示的时间增量。
如果您必须问一些问题,例如在我女朋友的生日到来之前我可以节省几个月,或者该月的最后一个星期五是什么时候,这会很有用。这隐藏了由于月份长度不同或闰年额外天数引起的复杂计算。
就您而言,您只对天数感兴趣。所以你最好使用timedelta
因为这避免了对dateutil
包裹。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)