吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1604|回复: 12
收起左侧

[学习记录] 摸鱼办python版本

  [复制链接]
zunmx 发表于 2024-5-22 17:00

项目架构

主体部分

python:3.x

插件(包)

zhdate:0.1

截图


image.png

代码

import datetime
import math
import os

import zhdate
from zhdate import ZhDate

now = datetime.datetime.now()
enumWeekend = {6: "日", 0: "一", 1: "二", 2: "三", 3: "四", 4: "无", 5: "六"}
周末 = 5 - now.weekday()
劳动节 = math.ceil((datetime.datetime(now.year, 5, 1).timestamp() - now.timestamp()) / 86400)
中秋节 = ZhDate(now.year, 8, 15).to_datetime().toordinal() - now.toordinal()
国庆节 = math.ceil((datetime.datetime(now.year, 10, 1).timestamp() - now.timestamp()) / 86400)
元旦 = math.ceil((datetime.datetime(now.year + 1, 1, 1).timestamp() - now.timestamp()) / 86400)
除夕 = ZhDate(now.year, 1, 1).to_datetime().toordinal() - now.toordinal()
端午节 = ZhDate(now.year, 5, 5).to_datetime().toordinal() - now.toordinal()
if 除夕 <= -3 :
    除夕 = ZhDate(now.year+1, 1, 1).to_datetime().toordinal() - now.toordinal()
strBase = f"今天是{now.year}年{now.month}月{now.day}日,{zhdate.ZhDate.from_datetime(now)},星期{enumWeekend[now.weekday()]},大家"
if now.hour < 9:
    strBase += """早上"""
elif now.hour < 12:
    strBase += """上午"""
elif now.hour < 13:
    strBase += """中午"""
elif now.hour < 18:
    strBase += """下午"""
elif now.hour < 24:
    strBase += """晚上"""

strBase += f"""好,工作再累,一定不要忘记摸鱼哦!有事没事起身去茶水间,去厕所,去廊道走走。别老在工位上坐着,上班是帮老板赚钱,摸鱼是赚老板的钱!"""
print(strBase)
# print(f"""距离周六还有""", 周末, "天")
# print(f"""劳动节已经过了 {abs(劳动)} 天""" if 劳动 < 0 else f"距离劳动节还有 {劳动} 天")
# print(f"""中秋已经过了 {abs(中秋)} 天""" if 中秋 < 0 else f"距离中秋节还有 {中秋} 天")
# print(f"""国庆已经过了 {abs(国庆)} 天""" if 国庆 < 0 else f"距离国庆节还有 {国庆} 天")
# print(f"""元旦已经过了 {abs(元旦)} 天""" if 元旦 < 0 else f"距离元旦还有 {元旦} 天")
# print(f"""除夕已经过了 {abs(除夕)} 天""" if 除夕 < 0 else f"距离除夕还有 {除夕} 天")

lst = {'周末': 周末,
       '劳动节': 劳动节,
       '中秋节': 中秋节,
       '国庆节': 国庆节,
       '元旦': 元旦,
       '端午节': 端午节,
       '除夕': 除夕}
his = []
for item in sorted(lst.items(), key=lambda s: s[1]):
    if item[1] >= 0:
        print(f"距离{item[0]}还有 {item[1]} 天")
    else:
        his.append(f"{item[0]}已经过了 {abs(item[1])} 天")
for item in his:
    print(item)

os.system("pause")


其它节日或者日期(如发工资日期,退休日期等等),可以手动添加,相信你可以的。

额外的操作:如果编程能力可以的话,可以微信推送,钉钉推送,等等



发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

3663527 发表于 2024-5-22 17:37
好好摸鱼
kenxy 发表于 2024-5-22 17:54
 楼主| zunmx 发表于 2024-5-22 18:04
kenxy 发表于 2024-5-22 17:54
可以多加一些其他的日子

嗯,这个是之前看有些微信群里发的,我就仿照着那个做了一版,注释忘记删了,其实打工人比较在意的还是法定假,刚刚仔细看了一下,少了个清明节
ZhjhJZ 发表于 2024-5-22 19:00
摸鱼办公室出品
daniel7785 发表于 2024-5-22 20:38
这都有人用?
ltgb 发表于 2024-5-23 06:13
能不能实时更新显示还有几天几小时几分几秒
 楼主| zunmx 发表于 2024-5-23 07:21
ltgb 发表于 2024-5-23 06:13
能不能实时更新显示还有几天几小时几分几秒

while True:
  .......
  Sleep(1)

system('cls')
去掉pause
pmyh2024 发表于 2024-5-23 18:59
这样也可以
ltgb 发表于 2024-5-24 05:59
zunmx 发表于 2024-5-23 07:21
while True:
  .......
  Sleep(1)

能不能给出完整的代码
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-14 08:07

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表