编写一个Python函数来计算从起始日期到结束日期之间的总工作日数。


假设你有一系列日期date_range,并且总工作日的结果是:

Dates are:
DatetimeIndex(['2020-01-01', '2020-01-02', '2020-01-03', '2020-01-06',
               '2020-01-07', '2020-01-08', '2020-01-09', '2020-01-10',
               '2020-01-13', '2020-01-14', '2020-01-15', '2020-01-16',
               '2020-01-17', '2020-01-20', '2020-01-21', '2020-01-22',
               '2020-01-23', '2020-01-24', '2020-01-27', '2020-01-28',
               '2020-01-29', '2020-01-30', '2020-01-31'],
               dtype='datetime64[ns]', freq='B')
Total number of days: 23

方案1

  • 定义一个名为business_days()的函数

  • 设置pd.bdate_range()函数的起始值为’2020-01-01’,结束值为’2020-02-02’,并将其保存为dates。

dates = pd.bdate_range('2020-01-01','2020-02-02')
  • 使用len(dates)计算天数。

len(dates)

示例

让我们检查以下代码以更好地理解:

import pandas as pd
def business_days():
   dates = pd.bdate_range('2020-01-01','2020-02-02')
   print("Total number of days:",len(dates))
business_days()

输出

Total number of days: 23

方案2

  • 定义一个函数

  • 设置pd.bdate_range()函数的起始值为’2020-01-01’,结束值为’2020-02-02’,并将其保存为dates。

dates = pd.bdate_range('2020-01-01','2020-02-02')
  • 将count设置为0,并创建一个for循环来访问dates中的所有值,并将count值自身加1。

count = 0
   for i in dates:
      count = count + 1
  • 最后,打印count。

示例

import pandas as pd
def business_days():
   dates = pd.bdate_range('2020-01-01','2020-02-02')
   count = 0
   for i in dates:
      count = count + 1
   print("Total number of days:",count)
business_days()

输出

Total number of days: 23

更新于:2021年2月25日

379 次浏览

开启你的职业生涯

通过完成课程获得认证

开始学习
广告