903 votes

Téléchargez le dernier jour du mois en Python

Est-il possible à l’aide de la bibliothèque standard de Python pour facilement déterminer (c'est-à-dire une fonction appel) le dernier jour d’un mois donné ?

Si la bibliothèque standard ne supporte que, le paquet dateutil prend en charge cela ?

1481voto

Blair Conrad Points 56195

Je n'avais pas remarqué cela plus tôt, lorsque j'étais en train de regarder la documentation du module calendrier, mais une méthode appelée monthrange fournit cette information:

monthrange(année, mois)
Retourne la semaine du premier jour du mois et le nombre de jours dans le mois, l'année et le mois.

>>> import calendar
>>> calendar.monthrange(2002,1)
(1, 31)
>>> calendar.monthrange(2008,2)
(4, 29)
>>> calendar.monthrange(2100,2)
(0, 28)

donc:

calendar.monthrange(year, month)[1]

semble être la solution la plus simple.

Ma réponse précédente fonctionne toujours, mais est clairement insuffisante.

282voto

Augusto Men Points 1731

Si vous ne souhaitez pas importer la `` module, une fonction simple en deux étapes peut être également :

Sorties :

125voto

John Millikin Points 86775

EDIT : Voir @Blair Conrad de réponse pour une solution plus propre


58voto

Blair Conrad Points 56195

EDIT : voir mon autre réponse. Il a une meilleure application que celui-ci, que je laisse ici juste au cas où quelqu'un est intéressé à voir comment on pourrait « rouler » calculatrice.

@John Millikin donne une bonne réponse, avec la complication supplémentaire de calculer le premier jour du mois suivant.

Ce qui suit n’est pas particulièrement élégant, mais pour trouver le dernier jour du mois après que n’importe quelle date donnée vit dans, vous pouvez essayer :

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