2. 使用python编写一段程序,程序要求:“输入一个日期,例如‘’20221001‘,输出该日期对应的节假日(也可能是周六或周末),如果不是节日就输出工作日’”。
时间: 2024-09-11 20:06:22 浏览: 50
要实现这个功能,我们可以使用Python的`datetime`模块来解析日期,并判断该日期是工作日、周末还是特定的节假日。由于中国的节假日情况比较复杂,有些节日可能有调休,因此这里仅提供一个简化版本的示例,我们仅考虑春节、国庆节两个可能连休的节假日,以及周六和周日为节假日的情况。
下面是一个简化版的Python程序代码示例:
```python
from datetime import datetime, timedelta
def is_holiday(date, holidays):
for holiday in holidays:
if date == holiday:
return True
return False
def is_weekend(date):
return date.weekday() == 5 or date.weekday() == 6
def get_date_holiday(date_str):
# 解析输入的日期字符串
date = datetime.strptime(date_str, '%Y%m%d')
# 设置节假日,这里以春节和国庆节为例
# 注意:实际节假日日期每年都可能有变动,需要根据当年节假日安排进行更新
holidays = [
datetime(date.year, 1, 1), # 元旦
datetime(date.year, 1, 31), # 春节初一
datetime(date.year, 10, 1), # 国庆节初一
datetime(date.year, 10, 7), # 国庆节第七天
]
# 判断是否是节假日
if is_holiday(date, holidays):
return "节假日"
# 判断是否是周末
elif is_weekend(date):
return "周末"
# 其余情况是工作日
else:
return "工作日"
# 输入一个日期
input_date = input("请输入一个日期,例如'20221001': ")
print(get_date_holiday(input_date))
```
请注意,实际应用中,节假日的判断应该根据具体的节假日安排表来进行。此外,由于涉及具体的节假日日期,这段代码在未来的年份使用时需要更新节假日列表。
阅读全文