[转]浅析使用python计算两个日期间隔天数﹑周数和指定若干天后对应的日期等
>>> import datetime>>> help(datetime)http://docs.python.org/library/datetime.html查看2009年5月31日和2009年2月1日间隔多少天>>> d1=datetime.date(2009,05,31)>>> d2=datetime.date(2009,02,01)>>> d1-d2datetime.timedelta(119) // 可以看出2009年5月31日和2009年2月1日间隔为119天.查看2009年5月31日是今年的第几天和第几周>>> d1=datetime.date(2009,05,31)>>> d1.isocalendar()(2009, 22, 7) // 2009年, 第22周, 礼拜7 >>> d1.timetuple()(2009, 5, 31, 0, 0, 0, 6, 151, -1) // (d.year, d.month, d.day, d.hour, d.minute, d.second, d.weekday(), 今年的第几天, dst)查看2009年5月31日后第20周对应的日期>>> d1=datetime.date(2009,05,31)>>> d=datetime.timedelta(weeks=20) // 20周将被自动转化为天数>>> d1+ddatetime.date(2009, 10, 18) // 所以2009年5月31日后第20周对应的日期为2009年10月18日查看2009年5月31日后第100天对应的日期和90天之前的日期>>> d1=datetime.date(2009,05,31)>>> d=datetime.timedelta(days=100) // 100天>>> d1+ddatetime.date(2009, 9, 8) // 所以2009年5月31日后第100天对应的日期为2009年9月8日>>> d=datetime.timedelta(days=90)>>> d1-ddatetime.date(2009, 3, 2) // 所以2009年5月31日向前数90天对应的日期为2009年3月2日看看datetime.timedelta的使用小例子datetime.timedelta(]]]]]])比如:>>> datetime.timedelta(weeks=40, days=84, hours=23, minutes=50, seconds=600)datetime.timedelta(365) // 使用timedelta()经过各种组合之后转化的总天数为365天// 40*7 + 84 = 364// 23时50分600秒=24时,所以为1天// 故最终为364+1=365天.
页:
[1]