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 ?
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 ?
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.
EDIT : Voir @Blair Conrad de réponse pour une solution plus propre
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 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.