基于Python实现一个春节倒计时脚本


Posted in Python onJanuary 22, 2022

前言​

春节对于中国人民群众来说,是一个意义非凡的节日,它意味着一年的结束和新年的开始,很多人为了表达自己的期盼,都会进行倒计时。

“在春节即将到来之际:

如果有人能提醒我还有几天的话那就好了!”

基于Python实现一个春节倒计时脚本

小编答应你了就问你贴不贴心 今天教大家编写一款简单的新年倒计时小脚本,时刻提醒大家距离过年还有多久啦——顺便在这里提前祝大家虎年吉祥,万事如意哦~

环境安装

Python3、 Pycharm (如需安装包、激活码等直接私信我即可安装问题解答都可以的哈~)

效果展示

基于Python实现一个春节倒计时脚本

代码展示

import datetime
import sys
import math

spring = datetime.datetime(2022, 1, 31, 0, 0, 0)  # 新的一年的日期
while True:
    today = datetime.datetime.now()  # 获取当前的日期
    day = (spring - today).days  # 新年日期减去当前日期
    second = (spring - today).seconds  # 得到秒数
    sec = second % 60
    minute = second / 60 % 60
    hour = second / 60 / 60
    if hour > 24:
        hour = hour - 24

    hour = math.floor(hour)  # 去掉小数点,向下取整
    minute = math.floor(minute)  # 去掉小数点,向下取整

    sys.stdout.write("离今年春节还有" + str(day) + "天" + str(hour) + "小时" + str(minute) + "分钟" + str(sec) + "秒" + '\r')
    sys.stdout.flush()
    time.sleep(1)
    print("离今年春节还有" + str(day) + "天" + str(hour) + "小时" + str(minute) + "分钟" + str(sec) + "秒" + '\r')

补充

除了节假日倒计时,Python还能实现摸鱼倒计时,具体代码如下

# -*- coding: utf-8 -*- 
import datetime 
from fastapi import FastAPI, Request 
from fastapi.responses import HTMLResponse 
from fastapi.templating import Jinja2Templates 
from zhdate import ZhDate as lunar_date 
 
app = FastAPI( 
    debug=False, 
    title="My API", 
    docs_url=f"/docs", 
    openapi_url=f"/openapi.json" 
) 
 
templates = Jinja2Templates(directory="templates") 
 
today = datetime.date.today() 
 
# print(today.year, today.month, today.day) 
# print("大年时间: ", lunar_date(today.year+1, 1, 1).to_datetime().date()) 
# print("端午时间: ", lunar_date(today.year, 5, 5).to_datetime().date()) 
# print("中秋时间: ", lunar_date(today.year, 8, 15).to_datetime().date()) 
# print("元旦时间: ", f"{today.year+1}-01-01") 
# print("清明时间: ", f"{today.year+1}-04-05") 
# print("劳动时间: ", f"{today.year+1}-05-01") 
# print("国庆时间: ", f"{today.year+1}-10-01") 
 
distance_big_year = (lunar_date(today.year + 1, 1, 1).to_datetime().date() - today).days 
 
distance_5_5 = (lunar_date(today.year, 5, 5).to_datetime().date() - today).days 
distance_5_5 = distance_5_5 if distance_5_5 > 0 else ( 
        lunar_date(today.year + 1, 5, 5).to_datetime().date() - today).days 
 
distance_8_15 = (lunar_date(today.year, 8, 15).to_datetime().date() - today).days 
distance_8_15 = distance_8_15 if distance_8_15 > 0 else ( 
        lunar_date(today.year + 1, 8, 15).to_datetime().date() - today).days 
 
distance_year = (datetime.datetime.strptime(f"{today.year + 1}-01-01", "%Y-%m-%d").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_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 
 
 
def get_week_day(date): 
    week_day_dict = { 
        0: '星期一', 
        1: '星期二', 
        2: '星期三', 
        3: '星期四', 
        4: '星期五', 
        5: '星期六', 
        6: '星期天', 
    } 
    day = date.weekday() 
    return week_day_dict[day] 
 
 
# print("距离大年: ", distance_big_year) 
# print("距离端午: ", distance_5_5) 
# print("距离中秋: ", distance_8_15) 
# print("距离元旦: ", distance_year) 
# print("距离清明: ", distance_4_5) 
# print("距离劳动: ", distance_5_1) 
# print("距离国庆: ", distance_10_1) 
# print("距离周末: ", 5 - today.weekday()) 
 
now_ = f"{today.year}年{today.month}月{today.day}日" 
week_day_ = get_week_day(today) 
time_ = [ 
    {"v_": 5 - 1 - today.weekday(), "title": "周末"},  # 距离周末 
    {"v_": distance_year, "title": "元旦"},  # 距离元旦 
    {"v_": distance_big_year, "title": "过年"},  # 距离过年 
    {"v_": distance_4_5, "title": "清明节"},  # 距离清明 
    {"v_": distance_5_1, "title": "劳动节"},  # 距离劳动 
    {"v_": distance_5_5, "title": "端午节"},  # 距离端午 
    {"v_": distance_8_15, "title": "中秋节"},  # 距离中秋 
    {"v_": distance_10_1, "title": "国庆节"},  # 距离国庆 
] 
 
time_ = sorted(time_, key=lambda x: x['v_'], reverse=False) 
 
 
@app.get("/", response_class=HTMLResponse) 
async def readme(request: Request): 
    return templates.TemplateResponse("readme.html", 
                                      {"request": request, "time_": time_, "now_": now_, "week_day_": week_day_}) 
 
 
if __name__ == '__main__': 
    import uvicorn 
 
    uvicorn.run(app='main:app', host="0.0.0.0", port=8080, reload=True)

以上就是基于Python实现一个春节倒计时脚本的详细内容,更多关于Python春节倒计时的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python回调函数用法实例分析
May 09 Python
Python删除Java源文件中全部注释的实现方法
Aug 30 Python
python去除字符串中的换行符
Oct 11 Python
对python3 一组数值的归一化处理方法详解
Jul 11 Python
Python3.6+selenium2.53.6自动化测试_读取excel文件的方法
Sep 06 Python
pip 安装库比较慢的解决方法(国内镜像)
Oct 06 Python
在tensorflow中实现屏蔽输出的log信息
Feb 04 Python
Python中私有属性的定义方式
Mar 05 Python
Python通过socketserver处理多个链接
Mar 18 Python
Python3爬虫里关于Splash负载均衡配置详解
Jul 10 Python
用python读取xlsx文件
Dec 17 Python
python pygame 开发五子棋双人对弈
May 02 Python
详解Python如何批量采集京东商品数据流程
Jan 22 #Python
用Python实现屏幕截图详解
Jan 22 #Python
Python实现学生管理系统并生成exe可执行文件详解流程
Jan 22 #Python
django中websocket的具体使用
Jan 22 #Python
Django+Nginx+uWSGI 定时任务的实现方法
Jan 22 #Python
梳理总结Python开发中需要摒弃的18个坏习惯
Jan 22 #Python
Pandas搭配lambda组合使用详解
Jan 22 #Python
You might like
php实现监听事件
2013/11/06 PHP
利用phpExcel实现Excel数据的导入导出(全步骤详细解析)
2013/11/26 PHP
Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法
2016/03/21 PHP
基于CI框架的微信网页授权库示例
2016/11/25 PHP
PHP使用PDO实现mysql防注入功能详解
2019/12/20 PHP
Jquery实现无刷新DropDownList联动实现代码
2010/03/08 Javascript
JavaScript小技巧 2.5 则
2010/09/12 Javascript
jquery maxlength使用说明
2011/09/09 Javascript
js控制表单操作的常用代码小结
2013/08/15 Javascript
JAVASCRIPT函数作用域和提前声明 分享
2013/08/22 Javascript
JS 实现导航栏悬停效果(续2)
2013/09/24 Javascript
JavaScript 学习笔记之基础中的基础
2015/01/13 Javascript
JavaScript中闭包的写法和作用详解
2016/06/29 Javascript
vue vuex vue-rouert后台项目——权限路由(适合初学)
2017/12/29 Javascript
还不懂递归?读完这篇文章保证你会懂
2018/07/29 Javascript
vue 使用鼠标滚动加载数据的例子
2019/10/31 Javascript
DWR内存兼容及无法调用问题解决方案
2020/10/16 Javascript
javascript实现倒计时提示框
2021/03/02 Javascript
在pandas中一次性删除dataframe的多个列方法
2018/04/10 Python
Python 网络爬虫--关于简单的模拟登录实例讲解
2018/06/01 Python
Ubuntu下Python2与Python3的共存问题
2018/10/31 Python
python实现顺时针打印矩阵
2019/03/02 Python
如何通过python实现人脸识别验证
2020/01/17 Python
Python如何操作office实现自动化及win32com.client的运用
2020/04/01 Python
使用python matplotlib 画图导入到word中如何保证分辨率
2020/04/16 Python
python实现scrapy爬虫每天定时抓取数据的示例代码
2021/01/27 Python
使用CSS3美化HTML表单的技巧演示
2016/05/17 HTML / CSS
HTML5本地存储和本地数据库实例详解
2017/09/05 HTML / CSS
2014年公司植树节活动方案
2014/03/04 职场文书
技术总监管理职责范本
2014/03/06 职场文书
村党支部换届选举方案
2014/05/02 职场文书
倡议书格式模板
2014/05/13 职场文书
找工作求职信
2014/07/07 职场文书
2014年采购工作总结
2014/11/20 职场文书
2015年派出所工作总结
2015/04/24 职场文书
浅谈mysql执行过程以及顺序
2021/05/12 MySQL