如何在Python中确定给定月份的天数
我需要在Python中计算某个月有多少天。如果用户输入2011年2月,程序应该能告诉我2011年2月有28天。有没有人能告诉我应该使用哪个库来确定某个月的天数?
3 个回答
17
出于学术兴趣,我是这样做的……
(dt.replace(month = dt.month % 12 +1, day = 1)-timedelta(days=1)).day
63
另一种解决方案:
>>> from datetime import date
>>> (date(2012, 3, 1) - date(2012, 2, 1)).days
29
431
你应该使用 calendar.monthrange
这个功能:
>>> from calendar import monthrange
>>> monthrange(2011, 2)
(1, 28)
为了让你更明白,monthrange
也支持闰年:
>>> from calendar import monthrange
>>> monthrange(2012, 2)
(2, 29)
正如 @mikhail-pyrev 在评论中提到的:
第一个数字是这个月第一天是星期几,第二个数字是这个月有多少天。