首页 > 编程语言 >Python 摸鱼神器: 打造你的个人摸鱼倒计时器

Python 摸鱼神器: 打造你的个人摸鱼倒计时器

时间:2024-08-30 16:51:16浏览次数:17  
标签:current get Python datetime 倒计时 摸鱼 date holiday

为什么要做摸鱼倒计时器?

在忙碌的工作生活中,我们经常忽视了劳逸结合的重要性。一个摸鱼倒计时器不仅能提醒我们适时放松,还能给我们带来一些小确幸。想象一下,当你看到距离下一个假期还有多少天时,是不是会感到一丝欣喜和期待呢?

摸鱼倒计时器的核心原理

我们的摸鱼倒计时器主要基于以下Python模块:

  • • datetime: 用于处理日期和时间

  • • chinese_calendar: 用于处理中国节假日

有了这些模块,我们就能够:

  • • 获取当前日期

  • • 计算距离特定日期的天数

  • • 判断下一个节假日的日期

  1. 1. 代码实现: 从零到摸鱼 让我们一步步来实现这个摸鱼神器!

准备工作

首先,我们需要安装必要的库:

pip install chinese_calendar

然后,导入所需的模块:

from datetime import datetime, timedelta
from chinese_calendar import is_holiday, get_holiday_detail

获取当前日期

def get_current_date():
    return datetime.now().strftime("%Y-%m-%d %A")

这个函数返回格式如"2023-08-07 Monday"的当前日期。

计算距离特定日期的天数

def days_until(target_date):
    today = datetime.now().date()
    return (target_date - today).days

这个函数计算从今天到目标日期的天数。

获取下一个节假日

def get_next_holiday(start_date=datetime.now().date()):
    current_date = start_date
    while True:
        if is_holiday(current_date):
            _, holiday_name = get_holiday_detail(current_date)
            return current_date, holiday_name
        current_date += timedelta(days=1)

这个函数从给定日期开始,找到下一个节假日及其名称。

获取下一个周末

def get_next_weekend():
    today = datetime.now().date()
    days_ahead = 5 - today.weekday()  # 周六是5
    if days_ahead <= 0:  # 如果今天是周六或周日
        days_ahead += 7
    return today + timedelta(days=days_ahead)

这个函数计算下一个周末的日期。

组装我们的摸鱼消息

from datetime import datetime, timedelta
from chinese_calendar import is_holiday, get_holiday_detail

def get_current_date():
    return datetime.now().strftime("%Y-%m-%d %A")

def days_until(target_date):
    today = datetime.now().date()
    return (target_date - today).days

def get_next_holiday(start_date=datetime.now().date()):
    current_date = start_date
    while True:
        if is_holiday(current_date):
            _, holiday_name = get_holiday_detail(current_date)
            return current_date, holiday_name
        current_date += timedelta(days=1)

def get_next_weekend():
    today = datetime.now().date()
    days_ahead = 5 - today.weekday()  # 周六是5
    if days_ahead <= 0:  # 如果今天是周六或周日
        days_ahead += 7
    return today + timedelta(days=days_ahead)

def generate_fish_message():
    today = datetime.now().date()
    message = f"【摸鱼倒计时】今天是 {get_current_date()}\n"
    message += "你好,摸鱼人,工作再累,一定不要忘记摸鱼哦! "
    message += "有事没事起身去茶水间去廊道去天台走走,别老在工位上坐着。"
    message += "多喝点水,钱是老板的,但命是自己的!\n\n"

    next_weekend = get_next_weekend()
    message += f"

标签:current,get,Python,datetime,倒计时,摸鱼,date,holiday
From: https://blog.csdn.net/2401_85903292/article/details/141722302

相关文章

  • python嵌套列表(Nested List)
    题目要求:        给定每个学生的姓名和成绩,将它们存储在嵌套列表中,并打印出成绩第二低的学生的姓名。如果有多个学生成绩第二低,则按字母顺序打印他们的姓名。使用到的函数:set()        将成绩列表转换为集合,集合自动去重,因此相同的成绩只会出现一次。 ......
  • 10个 Python 自动化脚本,让你的工作事半功倍!
    文末赠免费精品编程资料~~Python是一种功能强大且灵活的编程语言,非常适合用来做自动化。无论是简化重复性的任务,还是处理复杂的流程,Python都能帮你轻松应对。今天,给大家分享10个典型使用的Python自动化脚本,它们能大大提升你的工作效率,并简化工作流程。1.邮件自动化脚本概......
  • Python 新手必看:如何用 unittest 写出高质量代码?
    文末赠免费精品编程资料~~在Python中,unittest 模块是进行单元测试的强大工具。无论你是初学者还是有经验的开发者,单元测试都是确保代码质量的重要一环。而 unittest 模块就是让这一过程变得简单、快捷的利器。什么是单元测试?在进入 unittest 模块之前,我们先来了解一......
  • 计算机毕设推荐-基于python的超市数据处理可视化分析
    ......
  • 全网最详细爬虫教学-刚学Python也行-方法详解-看我这篇就够了-第一节
        前言        很多人一听到爬虫脑子里就想到黑客,顶级程序员等。但其实爬虫不难,今天,我就来教大家快速入门爬虫。    requests库        说到爬虫,就不得不提request库了,它能提取静态网页源码(静态网页!!!),例如百度就是个静态网站,实战演练一下。......
  • 【Python机器学习】NLP词中的数学——主题建模
    目录齐普夫定律相关度排序工具其他工具OkapiBM25在文档向量中,词计数是有用的,但是纯词计数,即使按照文档长度进行归一化处理,也不能告诉我们太多该词在当前文档相对于语料库中其他文档的重要度信息。如果能弄清楚这些信息,我们就能开始描述语料库中的文档了。假设我们有一......
  • Python 通过 COM 调用 ChemDraw 实践
    COMComponentObjectModel(COM)是由Microsoft提供的一种二进制接口技术,用于软件组件间的交互。它支持在不同编程语言、编程环境、进程和计算机之间以语言中立的方式使用对象。使用Python通过COM接口调用ChemDraw绘制分子及获取文档中的对象Python提供了一些常用的......
  • 基于python+flask框架的某研发型企业知识管理系统(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景在知识经济时代,企业核心竞争力越来越依赖于其知识资源的有效管理和利用。特别是对于研发型企业而言,知识是企业创新发展的源泉,是保持竞争优......
  • 基于python+flask框架的美食(风情)展示系统(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景在全球化日益加深的今天,美食不仅是满足人们味蕾享受的重要方式,更成为了文化传播的重要载体。不同地区的美食承载着各自独特的历史、文化和......
  • 基于python+flask框架的教务管理系统设计与实现(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着教育信息化进程的加速,传统的手工教务管理方式已难以满足现代高等教育复杂多变的管理需求。教务管理作为学校日常运营的核心环节,涉及学......