如何讓 Python 腳本在工作日運(yùn)行?
你好,我是征哥,最近用 Python 寫了個(gè)每日簽到答題的腳本,想讓它在工作日每天運(yùn)行,于是我找到了這個(gè)三方庫-chinesecalendar。
chinesecalendar 可以用來判斷某年某月某一天是不是工作日/節(jié)假日。支持 2004 年至 2022 年,包括 2020 年的春節(jié)延長(zhǎng)。
我覺得,支持以往的年份沒什么價(jià)值,畢竟都過去了,還好他支持 2022 年。
看了它的實(shí)現(xiàn)方式,是根據(jù)國家的法定節(jié)假日寫死的:
畢竟也是沒有辦法的事情,哪天調(diào)休誰也無法提前預(yù)知。在此感謝 LKI[1] 的辛勤貢獻(xiàn)。
接下來分享 chinesecalendar 的簡(jiǎn)單用法:
先 pip install chinesecalendar 安裝,然后就可以判斷了:
from datetime import datetime, timedelta
from chinese_calendar import is_holiday, is_workday
day = datetime.now()
week_list = ["一", "二", "三", "四", "五", "六", '日']
for i in range(31):
x = day + timedelta(days=i)
desc = "工作日" if is_workday(x) else "節(jié)假日" if is_holiday(x) else ""
print(f"{x.strftime('%Y-%m-%d')} 星期{week_list[x.weekday()]} {desc}")
運(yùn)行結(jié)果如下:
如果其他語言想使用,可以用這個(gè) Python 腳本[2]導(dǎo)出常量文件。