62 votes

Obtenir l'objet date pour le premier/dernier jour de l'année en cours

J'ai besoin d'obtenir date objets pour le premier et le dernier jour de l'année en cours.

Actuellement, j'utilise ce code qui fonctionne bien, mais je suis curieux de savoir s'il existe une meilleure façon de le faire ; par exemple sans avoir à spécifier le mois/jour manuellement.

 from datetime import date
a = date(date.today().year, 1, 1)
b = date(date.today().year, 12, 31)

37voto

NPE Points 169956

La seule amélioration réelle qui vient à l'esprit est de donner à vos variables des noms plus descriptifs que a et b .

19voto

Ibrohim Ermatov Points 1028
from datetime import datetime

starting_day_of_current_year = datetime.now().date().replace(month=1, day=1)    
ending_day_of_current_year = datetime.now().date().replace(month=12, day=31)

4voto

Trenton Points 2315

Vous aurez des choses géniales à faire si vous courez si tard le soir du Nouvel An et que les deux appels à today() franchissent la limite de l'année. C'est plus sûr de faire ceci :

 from datetime import date

epoch_year = date.today().year
year_start = date(epoch_year, 1, 1)
year_end = date(epoch_year, 12, 31)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X