Python是一种广泛应用于数据科学和工程领域的编程语言,它有许多内置函数和库,可以方便地实现各种任务。其中之一是计算工作日,也就是排除掉周末和假期,并计算两个日期之间的工作日数量。
import datetime import holidays us_holidays = holidays.US() def workdays_between(start_date, end_date): days = (end_date - start_date).days + 1 days -= sum(1 for day in range(days) if (start_date + datetime.timedelta(day)).weekday() >= 5 or (start_date + datetime.timedelta(day)) in us_holidays) return days if __name__ == "__main__": start = datetime.date(2021, 1, 1) end = datetime.date(2021, 12, 31) print("工作日数量:", workdays_between(start, end))
这段代码使用datetime库中的date对象和timedelta对象来处理日期,holidays库提供了各个国家的节假日。workdays_between函数接受两个日期参数,计算它们之间的工作日数量。算法是先计算出总天数,然后排除掉周末和节假日的天数。
以上是一个简单的python工作日计算的例子,有了这个函数,我们就可以在许多实际场景中方便地计算工作日,比如计算工期、统计绩效等。