我需要实现代码以帮助我获取两个日期之间的月份列表。
我已经有了给出月份增量的代码,即月份数。
实际上,我需要一种方法来获取两个日期之间的月份列表。
这是获取月份增量的代码。
import calendar
import datetime
def calculate_monthdelta(date1, date2):
def is_last_day_of_the_month(date):
days_in_month = calendar.monthrange(date.year, date.month)[1]
return date.day == days_in_month
imaginary_day_2 = 31 if is_last_day_of_the_month(date2) else date2.day
monthdelta = (
(date2.month - date1.month) +
(date2.year - date1.year) * 12 +
(-1 if date1.day > imaginary_day_2 else 0)
)
print monthdelta
return monthdelta
date2 = datetime.datetime.today()
date1 = date2.replace(month=01)
calculate_monthdelta(date1, date2)
现在我需要获取相同月份列表的方法。
如果有任何方法可以获取两个日期之间的月份列表,我们将不胜感激。
注意:除了我在这里使用的代码之外,请提出任何想法(如果可用)。
最佳答案
试试这个
import datetime
import time
from dateutil.rrule import rrule, MONTHLY
months = [dt.strftime("%m") for dt in rrule(MONTHLY, dtstart=date1, until=date2)]
print months
关于python - 获取两个日期之间的月份列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37456421/