计算两个日期之间有多少个工作日,优点是还能计算那些调休的工作日,这里推荐特别好用的模块就是chinesecalendar,它主要能够实时更新中国的节假日有那些。
下面直接上代码:
########################
def workday(kaishi,jieshu):
from datetime import datetime,timedelta
from chinese_calendar import is_workday
if type(kaishi)== str:
kaishi=datetime.strptime(kaishi, %Y-%m-%d ).date()
if type(jieshu)== str:
jieshu=datetime.strptime(jieshu, %Y-%m-%d ).date()
if kaishi>jieshu:
kaishi,jieshu=jieshu,kaishi
counts = 0
while True:
if kaishi >jieshu:
break
if is_workday(kaishi):
counts += 1
kaishi += timedelta(days=1)
return counts
print(workday( 2022-01-01 , 2022-12-31 ))
print(workday( 2021-01-01 , 2021-12-31 ))
print(workday( 2020-01-01 , 2020-12-31 ))
########################
执行结果如下:
249
250
249
________________END______________

下次记得用代码块
@初心不变_叶子 谢谢