Функция is_busday
Функция is_busday проверяет, является ли переданная дата
рабочим днем. Первым параметром функция принимает дату
(строку, массив строк или объект datetime). Вторым параметром
можно передать маску выходных дней (по умолчанию суббота и воскресенье).
Функция возвращает булев массив или одно значение.
Синтаксис
np.is_busday(dates, [weekmask], [holidays], [busdaycal])
Пример
Давайте проверим, является ли сегодняшний день рабочим:
import numpy as np
from datetime import datetime
today = datetime.now().strftime('%Y-%m-%d')
res = np.is_busday(today)
print(res)
Результат выполнения кода (если сегодня рабочий день):
True
Пример
Давайте проверим массив дат и узнаем, какие из них являются рабочими днями:
import numpy as np
dates = np.array(['2026-09-07', '2026-09-08', '2026-09-12', '2026-09-13'])
res = np.is_busday(dates)
print(res)
Результат выполнения кода:
[ True True False False]
Пример
Давайте проверим даты с учетом праздничных дней:
import numpy as np
dates = np.array(['2026-05-01', '2026-05-02', '2026-05-03', '2026-05-04'])
holidays = np.array(['2026-05-01', '2026-05-04'])
res = np.is_busday(dates, holidays=holidays)
print(res)
Результат выполнения кода:
[False True True False]
Пример
Давайте изменим маску выходных дней на пятницу и субботу:
import numpy as np
dates = np.array(['2026-09-04', '2026-09-05', '2026-09-06', '2026-09-07'])
weekmask = '1111100' # 1 - рабочий, 0 - выходной
res = np.is_busday(dates, weekmask=weekmask)
print(res)
Результат выполнения кода:
[False False True True]
Смотрите также
-
функцию
busday_count,
которая подсчитывает количество рабочих дней между датами -
функцию
busday_offset,
которая смещает дату на указанное количество рабочих дней -
класс
busdaycalendar,
который определяет календарь рабочих дней -
функцию
datetime_as_string,
которая преобразует datetime в строку