Python中工作日類庫(kù)Busines Holiday的介紹與使用
引言
大家在日常工作中,經(jīng)常會(huì)碰到類似的場(chǎng)景,需要計(jì)算在某個(gè)時(shí)間段內(nèi)的工作日以及確定某天是否為工作日,這里的介紹的工具包將很好的解決這個(gè)問(wèn)題。

1. 工具包Business Holiday介紹
其提供了非常簡(jiǎn)單易用的計(jì)算工作日的接口,并允許用戶指定特定日期為假期,從而將其從當(dāng)前的工作日中剔除。
項(xiàng)目主頁(yè): https://pypi.Python.org/pypi/business_calendar/
文檔首頁(yè): http://py-business-calendar.readthedocs.io/en/latest/
2. 功能分析與介紹
Case 1: 計(jì)算在某個(gè)時(shí)間段之內(nèi)的工作日天數(shù)
from business_calendar import Calendar, MO, TU, WE, TH, FR
import datetime
date1 = datetime.datetime(2013,1,10)
# normal calendar, no holidays
cal = Calendar()
date2 = datetime.datetime(2013,3,20)
print('%s days between %s and %s' % (cal.busdaycount(date1, date2), date1, date2))
功能描述: 計(jì)算2013/1/10之后的25天之內(nèi)的工作日天數(shù):
49 days between 2013-01-10 00:00:00 and 2013-03-20 00:00:00
Case 2: 計(jì)算若干工作日之后的日期
from business_calendar import Calendar, MO, TU, WE, TH, FR
import datetime
date1 = datetime.datetime(2013,1,10)
cal = Calendar()
date2 = cal.addbusdays(date1, 25)
print("The specified date will be %s" % date2)
功能描述: 計(jì)算25個(gè)工作日之后的日期
The specified date will be 2013-02-14 00:00:00
Case 3: 結(jié)合假期,以及星期的概念,計(jì)算工作日:
from business_calendar import Calendar, MO, TU, WE, TH, FR
import datetime
date1 = datetime.datetime(2013,1,10)
# normal calendar, no holidays
cal = Calendar(workdays=[MO,TU,WE,TH], holidays=['2013-01-17'])
date2 = datetime.datetime(2013,3,20)
print('%s days between %s and %s' % (cal.busdaycount(date1, date2), date1, date2))
功能描述: 指定周一到周四工作,1.17日是公眾假期,計(jì)算會(huì)有多少個(gè)工作日:
38 days between 2013-01-10 00:00:00 and 2013-03-20 00:00:00
3. 功能分析
在該類庫(kù)中,有workday和businessday的概念:
addbusydays(date, offset)其將考慮holidays公休假的因素addworkdays(date, offset)忽略公休假的因素busdaycount(date1, date2)計(jì)算兩個(gè)時(shí)間點(diǎn)直接的工作日range(date1, date2)返回工作日列表, 考慮假期因素isworkday(date)是否是工作日,忽略公休假的因素isbusday(date)是否工作日,考慮公休假isHoliday(date)是否是假日
4. 總結(jié)
business_holiday的包是非常強(qiáng)大了,基本覆蓋了我們關(guān)于假期的需求,大家可以自行嘗試一下如何使用。
好了,以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
- python?chinesecalendar報(bào)錯(cuò):"no?available?data?for?year?{},?only?year?between?[{},?{}]?supported"
- Python中chinesecalendar簡(jiǎn)介、安裝、使用方法詳細(xì)講解
- Python?ChineseCalendar包主要類和方法詳解
- Python+SeaTable實(shí)現(xiàn)計(jì)算兩個(gè)日期間的工作日天數(shù)
- python使用time、datetime返回工作日列表實(shí)例代碼
- python 如何利用chinese_calendar 獲取上一個(gè)工作日日期
相關(guān)文章
Python編程快速上手——正則表達(dá)式查找功能案例分析
這篇文章主要介紹了Python正則表達(dá)式查找功能,結(jié)合具體實(shí)例形式分析了Python基于正則表達(dá)式遍歷查找指定格式文件的相關(guān)操作技巧,需要的朋友可以參考下2020-02-02
總結(jié)分析Python的5個(gè)硬核函數(shù)
今天看到一篇很好的 Python 博文,結(jié)合自己的經(jīng)驗(yàn)總結(jié),分享給大家一篇關(guān)于eval, exec, compile, locals, globals這些函數(shù)的文章2021-11-11
Django全局啟用登陸驗(yàn)證login_required的方法
這篇文章主要介紹了Django全局啟用登陸驗(yàn)證login_required的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06
python數(shù)據(jù)處理和數(shù)據(jù)清洗的示例詳解
數(shù)據(jù)清洗是指發(fā)現(xiàn)并糾正數(shù)據(jù)文件中可識(shí)別的錯(cuò)誤的最后一道程序,包括檢查數(shù)據(jù)一致性,處理無(wú)效值和缺失值等,數(shù)據(jù)清洗與處理的目的是提高數(shù)據(jù)的質(zhì)量,提高實(shí)驗(yàn)結(jié)果的可靠度,本文給大家介紹了python數(shù)據(jù)處理和數(shù)據(jù)清洗的示例,需要的朋友可以參考下2024-08-08
Python 詳解通過(guò)Scrapy框架實(shí)現(xiàn)爬取CSDN全站熱榜標(biāo)題熱詞流程
Scrapy是用純Python實(shí)現(xiàn)一個(gè)為了爬取網(wǎng)站數(shù)據(jù)、提取結(jié)構(gòu)性數(shù)據(jù)而編寫的應(yīng)用框架,用途非常廣泛,框架的力量,用戶只需要定制開(kāi)發(fā)幾個(gè)模塊就可以輕松的實(shí)現(xiàn)一個(gè)爬蟲,用來(lái)抓取網(wǎng)頁(yè)內(nèi)容以及各種圖片,非常之方便2021-11-11
PyTorch模型創(chuàng)建與nn.Module構(gòu)建
這篇文章主要為大家介紹了PyTorch模型創(chuàng)建與nn.Module構(gòu)建示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07
python實(shí)現(xiàn)五子棋雙人對(duì)弈
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)五子棋雙人對(duì)弈,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05
python?pip特殊用法之pip?install?-v?-e?.命令詳解
這篇文章主要給大家介紹了關(guān)于python?pip特殊用法之pip?install?-v?-e?.命令的相關(guān)資料,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-09-09
一起用Python做個(gè)上課點(diǎn)名器的制作過(guò)程
今天給大家分享一個(gè)讀者粉絲投稿的,關(guān)于上課點(diǎn)名的實(shí)戰(zhàn)案例,對(duì)Python上課點(diǎn)名器實(shí)現(xiàn)過(guò)程感興趣的朋友,一起來(lái)看看是如何實(shí)現(xiàn)的吧2021-09-09

