python判断工作日
时间: 2023-07-17 07:03:49 浏览: 127
要判断一个日期是否为工作日,你可以使用Python中的datetime和calendar模块。以下是一个示例代码:
```python
import datetime
import calendar
def is_weekday(date):
# 判断是否为周末,如果是周六或周日则返回False
if date.weekday() >= 5:
return False
# 判断是否为节假日,如果是节假日则返回False
holidays = calendar.Calendar().holidays()
if date in holidays:
return False
return True
# 测试示例
date1 = datetime.date(2022, 1, 1) # 周六
date2 = datetime.date(2022, 1, 2) # 周日
date3 = datetime.date(2022, 1, 3) # 周一
print(is_weekday(date1)) # False
print(is_weekday(date2)) # False
print(is_weekday(date3)) # True
```
在上述示例中,我们定义了一个`is_weekday()`函数,接受一个日期作为参数。该函数首先通过`weekday()`方法判断日期对应的星期几,如果是周六或周日,则返回False。然后使用`calendar.Calendar().holidays()`获取所有的节假日,并检查传入的日期是否是节假日,如果是则返回False。最后如果既不是周末也不是节假日,则返回True,表示是工作日。
你可以根据需要自定义节假日列表,并将其传递给`is_weekday()`函数进行判断。