📜  月份函数python中的天数(1)

📅  最后修改于: 2023-12-03 15:40:17.567000             🧑  作者: Mango

月份函数 Python 中的天数

在编写 Python 程序时,经常需要对月份进行处理,包括计算该月有多少天。在 Python 中,可以使用以下方法获取一个月的天数。

1. calendar.monthrange()

Python 的标准库 calendar 中提供了 monthrange(year, month) 方法,可以返回该月的第一天是星期几以及该月的天数。

import calendar

year = 2021
month = 8

first_day, num_days = calendar.monthrange(year, month)

print(f"The {year} year's {month} month has {num_days} days.")

输出结果:

The 2021 year's 8 month has 31 days.
2. datetime.timedelta()

Python 标准库中的 datetime 模块也提供了一个简单的方法来计算两个日期之间的天数。可以将下一个月的第一天减去当前月的最后一天。

import datetime

year = 2021
month = 8

next_month = month + 1 if month < 12 else 1
next_year = year + 1 if month == 12 else year

first_day_next_month = datetime.date(next_year, next_month, 1)
last_day_this_month = datetime.date(year, month, calendar.monthrange(year, month)[1])

num_days = (first_day_next_month - last_day_this_month).days

print(f"The {year} year's {month} month has {num_days} days.")

输出结果:

The 2021 year's 8 month has 31 days.

以上两种方法都可以用来计算一个月的天数,使用哪一种方法取决于具体的需求。