Générer toutes les dates à l'intérieur d'une plage donnée en python
J'ai deux variables de chaîne de caractères qui contiennent des dates au format aaaa-mm-jj comme suit :
date1 = '2011-05-03'
date2 = '2011-05-10'
Je veux écrire du code qui génère toutes les dates de la gamme date1 à date2. Comment cela peut-il être fait en Python?
en double stackoverflow.com/questions/993358/...
Peut-être, mais pas de celui-là.
double possible de une Itération à travers un éventail de dates en Python
Peut-être, mais pas de celui-là.
double possible de une Itération à travers un éventail de dates en Python
OriginalL'auteur Joe | 2011-05-03
Vous devez vous connecter pour publier un commentaire.
Les Dates peuvent être comparés les uns aux autres comme des numéros, et vous pouvez le faire liées à la date du calcul avec la date /heure.timedelta objet. Il n'y a pas de raison d'utiliser dateutil ici, et il n'y a pas de raison de coder en dur le nombre d'itérations à la plage(9)'. Cela devient vraiment similaire à la façon dont vous feriez face à la plaine de vieux numéros.
OriginalL'auteur jonesy
Pandas est grand pour le temps de la série en général, et a le soutien direct à la fois sur des plages de dates et la date de l'analyse (c'est automagique).
Il a aussi beaucoup d'options pour rendre la vie plus facile. Par exemple, si vous souhaitez uniquement les jours de la semaine, vous serait-il suffit de l'échanger dans
bdate_range
.Voir http://pandas.pydata.org/pandas-docs/stable/timeseries.html#generating-ranges-of-timestamps
OriginalL'auteur fantabolous
Depuis dateutil n'est pas une bibliothèque standard, vous devrez l'installer comme un paquet séparé. Voir la documentation pour plus de détails concernant le format (en particulier
dayfirst
etyearfirst
commutateurs).OriginalL'auteur eumiro
En supposant que vos dates sont déjà comme un
datetime.date
classe, vous pouvez utiliser.fromordinal
et.toordinal
pour créer cette oneliner.Le résultat est exclusif
end_date
. Utilisationend_date.toordinal() + 1
pour une gamme inclusiveend_date
.OriginalL'auteur Elmex80s
OriginalL'auteur badp
Je l'aime parce qu'elle est intuitive et il donne un tableau de chaînes date.
OriginalL'auteur chorbs
OriginalL'auteur Cédric Julien
Je ne suis pas trop sûr si l'analyse des cordes était intégrale ou juste la façon dont vous avez commencé la question. Si oui, veuillez ne pas tenir compte de la réponse simpliste
OriginalL'auteur sehe