如何编写一个Python脚本,用于计算并获取每个月的第一个工作日到最后一个工作日(假定工作日为周一至周五)?
时间: 2024-11-20 21:56:17 浏览: 6
要在Python中编写一个脚本来计算每个月的第一个工作日到最后一个工作日,可以利用pandas库以及calendar模块。首先确保已经安装了这两个库,如果尚未安装,可以使用pip安装:
```bash
pip install pandas
```
然后创建一个函数,如下所示:
```python
import calendar
import pandas as pd
def get_business_days_month(year, month):
# 获取每个月的日历
cal = calendar.monthcalendar(year, month)
# 初始化开始和结束的工作日列表
start_date = None
end_date = None
for week in cal:
# 检查一周内是否有工作日(1代表周一至周五)
if any(day >= 1 and day <= 5 for day in week):
if start_date is None:
start_date = pd.to_datetime(f"{year}/{month}/{week[0]}")
end_date = pd.to_datetime(f"{year}/{month}/{week[-1]}") # 取最后一日,假设该周内有工作日
break # 找到第一个工作日后不再继续查找
return start_date, end_date
# 示例:获取2023年1月的第一天到最后一天(工作日)
year = 2023
month = 1
start_day, end_day = get_business_days_month(year, month)
print(f"2023年1月的第一个工作日是:{start_day}")
print(f"2023年1月的最后一个工作日是:{end_day}")
阅读全文