Python統(tǒng)計(jì)節(jié)假日剩余天數(shù)的腳本
1、前言
如何快速的想了解距離節(jié)假日還有多少天?
接下來(lái)使用Python腳本來(lái)解決這個(gè)問(wèn)題。
2、倒計(jì)時(shí)腳本
腳本代碼:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from colorama import init, Fore
from zhdate import ZhDate
import datetime
def get_week_day(date):
week_day_dict = {
0: '星期一',
1: '星期二',
2: '星期三',
3: '星期四',
4: '星期五',
5: '星期六',
6: '星期天',
}
day = date.weekday()
return week_day_dict[day]
def time_parse(today):
distance_year = (datetime.datetime.strptime(f"{today.year}-01-01", "%Y-%m-%d").date() - today).days
distance_year = distance_year if distance_year > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-01-01", "%Y-%m-%d").date() - today).days
distance_big_year = (ZhDate(today.year, 1, 1).to_datetime().date() - today).days
distance_big_year = distance_big_year if distance_big_year > 0 else (
ZhDate(today.year + 1, 1, 1).to_datetime().date() - today).days
distance_4_5 = (datetime.datetime.strptime(f"{today.year}-04-05", "%Y-%m-%d").date() - today).days
distance_4_5 = distance_4_5 if distance_4_5 > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-04-05", "%Y-%m-%d").date() - today).days
distance_5_1 = (datetime.datetime.strptime(f"{today.year}-05-01", "%Y-%m-%d").date() - today).days
distance_5_1 = distance_5_1 if distance_5_1 > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-05-01", "%Y-%m-%d").date() - today).days
distance_5_5 = (ZhDate(today.year, 5, 5).to_datetime().date() - today).days
distance_5_5 = distance_5_5 if distance_5_5 > 0 else (
ZhDate(today.year + 1, 5, 5).to_datetime().date() - today).days
distance_8_15 = (ZhDate(today.year, 8, 15).to_datetime().date() - today).days
distance_8_15 = distance_8_15 if distance_8_15 > 0 else (
ZhDate(today.year + 1, 8, 15).to_datetime().date() - today).days
distance_10_1 = (datetime.datetime.strptime(f"{today.year}-10-01", "%Y-%m-%d").date() - today).days
distance_10_1 = distance_10_1 if distance_10_1 > 0 else (
datetime.datetime.strptime(f"{today.year + 1}-10-01", "%Y-%m-%d").date() - today).days
# print("距離周末: ", 5 - today.weekday())
# print("距離元旦: ", distance_year)
# print("距離大年: ", distance_big_year)
# print("距離清明: ", distance_4_5)
# print("距離勞動(dòng): ", distance_5_1)
# print("距離端午: ", distance_5_5)
# print("距離中秋: ", distance_8_15)
# print("距離國(guó)慶: ", distance_10_1)
time_ = [
{"v_": 5 - 1 - today.weekday(), "title": "周末"}, # 距離周末
{"v_": distance_year, "title": "元旦"}, # 距離元旦
{"v_": distance_big_year, "title": "過(guò)年"}, # 距離過(guò)年
{"v_": distance_4_5, "title": "清明節(jié)"}, # 距離清明
{"v_": distance_5_1, "title": "勞動(dòng)節(jié)"}, # 距離勞動(dòng)
{"v_": distance_5_5, "title": "端午節(jié)"}, # 距離端午
{"v_": distance_8_15, "title": "中秋節(jié)"}, # 距離中秋
{"v_": distance_10_1, "title": "國(guó)慶節(jié)"}, # 距離國(guó)慶
]
time_ = sorted(time_, key=lambda x: x['v_'], reverse=False)
return time_
def countdown():
init(autoreset=True)
today = datetime.date.today()
now_ = f"{today.year}年{today.month}月{today.day}日"
week_day_ = get_week_day(today)
print(f'\n\t\t {Fore.GREEN}{now_} {week_day_}')
str_ = '''
開(kāi)始!
'''
print(f'{Fore.RED}{str_}')
time_ = time_parse(today)
for t_ in time_:
print(f'\t\t {Fore.RED}距離{t_.get("title")}還有: {t_.get("v_")}天')
tips_ = '''
結(jié)束!
print(f'{Fore.RED}{tips_}')
print(f'\t\t{Fore.CYAN} 公眾號(hào):AllTests軟件測(cè)試\n')
if __name__ == '__main__':
countdown()在PyCharm上執(zhí)行結(jié)果:

在終端上執(zhí)行結(jié)果:

到此這篇關(guān)于Python統(tǒng)計(jì)節(jié)假日剩余天數(shù)的腳本的文章就介紹到這了,更多相關(guān)Python統(tǒng)計(jì)節(jié)假日內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python中很常用的函數(shù)map()用法實(shí)例
這篇文章主要給大家介紹了關(guān)于Python中很常用的函數(shù)map()用法的相關(guān)資料,map()函數(shù)是Python的內(nèi)置函數(shù),會(huì)根據(jù)提供的函數(shù)參數(shù),對(duì)傳入的序列數(shù)據(jù)進(jìn)行映射,需要的朋友可以參考下2023-10-10
Django Admin 實(shí)現(xiàn)外鍵過(guò)濾的方法
下面小編就為大家?guī)?lái)一篇Django Admin 實(shí)現(xiàn)外鍵過(guò)濾的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09
Python PyMuPDF實(shí)現(xiàn)PDF與圖片和PPT相互轉(zhuǎn)換
能夠用來(lái)對(duì)PDF文檔進(jìn)行操作的Python包有好幾個(gè),如提取內(nèi)容的PdfPlumber、PDFMiner,可以用來(lái)對(duì)PDF文件進(jìn)行修改操作的PyPDF2等等,如果只是需要簡(jiǎn)單地對(duì)PDF文件實(shí)現(xiàn)合并、拆分、書簽操作,使用PyPDF2就足以滿足。但如果想對(duì)PDF文件進(jìn)行一些底層操作,基本上只有PyMuPDF了2022-12-12
pytorch_detach 切斷網(wǎng)絡(luò)反傳方式
這篇文章主要介紹了pytorch_detach 切斷網(wǎng)絡(luò)反傳方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-05-05
Python和OpenCV庫(kù)實(shí)現(xiàn)識(shí)別人物出現(xiàn)并鎖定
本文主要介紹了Python和OpenCV庫(kù)實(shí)現(xiàn)識(shí)別人物出現(xiàn)并鎖定,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04
Python?copy()與deepcopy()方法之間有什么區(qū)別
這篇文章主要介紹了Python中的copy()和deepcopy(),下面詳細(xì)介紹該內(nèi)容并附上詳細(xì)代碼,需要的朋友可以參考一下文章的具體內(nèi)容,希望對(duì)你有所幫助2022-10-10
Python+SQLAlchemy輕松實(shí)現(xiàn)管理數(shù)據(jù)庫(kù)
QLAlchemy是一個(gè)強(qiáng)大的ORM(對(duì)象關(guān)系映射)庫(kù),它允許您通過(guò)Python代碼與關(guān)系型數(shù)據(jù)庫(kù)進(jìn)行交互,本文我們將學(xué)習(xí)如何使用Python和SQLAlchemy庫(kù)來(lái)輕松管理數(shù)據(jù)庫(kù),需要的可以參考下2023-05-05

