215 votes

Comment déterminer le nombre de jours d'un mois donné en python

Je dois calculer le nombre de jours pour un mois donné en python. Si un utilisateur entre février 2011, le programme devrait pouvoir me dire que février 2011 a 28 jours. Quelqu'un pourrait-il me dire quelle bibliothèque je devrais utiliser pour déterminer la durée d'un mois donné?

433voto

Andrew Hare Points 159332

Utilisez calendar.monthrange :

 >>> from calendar import monthrange
>>> monthrange(2011, 2)
(1, 28)
 

Pour être clair, monthrange prend également en charge les années bissextiles:

 >>> from calendar import monthrange
>>> monthrange(2012, 2)
(2, 29)
 

63voto

Björn Lindqvist Points 3739

Solution alternative:

 >>> from datetime import date
>>> (date(2012, 3, 1) - date(2012, 2, 1)).days
29
 

18voto

Frosty Snowman Points 31

Juste pour des raisons d’intérêt académique, je l’ai fait de cette façon ...

 (dt.replace(month = dt.month % 12 +1, day = 1)-timedelta(days=1)).day
 

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