Las fechas se pueden comparar entre sí al igual que los números, y puede hacer cálculos matemáticos relacionados con la fecha con el objeto datetime.timedelta. No hay ninguna razón para usar dateutil aquí, y no hay ninguna razón para codificar el número de iteraciones a la 'rango (9)'. Esto realmente se vuelve similar a cómo lidiarías con números antiguos simples.
>>> import datetime
>>> date1 = '2011-05-03'
>>> date2 = '2011-05-10'
>>> start = datetime.datetime.strptime(date1, '%Y-%m-%d')
>>> end = datetime.datetime.strptime(date2, '%Y-%m-%d')
>>> step = datetime.timedelta(days=1)
>>> while start <= end:
... print start.date()
... start += step
...
2011-05-03
2011-05-04
2011-05-05
2011-05-06
2011-05-07
2011-05-08
2011-05-09
2011-05-10
>>>
duplicado http://stackoverflow.com/questions/993358/creating-a-range-of-dates-in-python –
@msa Posiblemente, pero no de ese. – badp
posible duplicado de [iteración a través de un rango de fechas en Python] (http://stackoverflow.com/questions/1060279/iterating-through-a-range-of-dates-in-python) – kasperd