I am using this code to find months between two dates:
from dateutil.rrule import rrule, MONTHLY
from datetime import datetime
start_date = datetime(2017, 4, 30)
end_date = datetime(2017, 5, 6)
months = [dt.strftime("%m")
for dt in rrule(MONTHLY, dtstart=start_date,
until=end_date)]
In [14]: months
Out[14]: ['04']
I was expecting ['04', '05']
For example if i change dates
from dateutil.rrule import rrule, MONTHLY
from datetime import datetime
start_date = datetime(2017, 4, 30)
end_date = datetime(2017, 5, 30)
months = [dt.strftime("%m")
for dt in rrule(MONTHLY, dtstart=start_date,
until=end_date)]
In [42]: months
Out[42]: ['04', '05']