任何人都可以帮助我,如何在Python中获得逐月的数量?
from datetime import datetime, date, timedelta
输入:
date1 = "2015-07-09"
date2 = "2016-08-20"
输出:
2015-07 : 4
2015-08 : 5
2015-08 : 4
....
2016-08 : 5
如何按月从date1到date2计算一周的周数?
答案 0 :(得分:1)
如果您想衡量两个日期之间的完整周数,可以使用datetime.strptime
和timedelta
来完成此操作:
from datetime import datetime, date, timedelta
dateformat = "%Y-%m-%d"
date1 = datetime.strptime("2015-07-09", dateformat)
date2 = datetime.strptime("2016-08-20", dateformat)
weeks = int((date2-date1).days/7)
print weeks
这会输出58
。除以7会导致返回的周数。使用整周的数量(而不是部分),因为int
仅返回整数部分。如果您想获得部分周的数量,则可以除以7.0而不是7,并确保删除int
部分。
答案 1 :(得分:0)
试试这个:
date1 = "2015-07-09"
date2 = "2016-08-20"
d1 = datetime.datetime.strptime(date1, '%Y-%m-%d').date()
d2 = datetime.datetime.strptime(date2, '%Y-%m-%d').date()
diff = d2 -d1
weeks, days = divmod(diff.days, 7)