基于Python的姨妈计算器

目的:
      用于云函数中每日自动获取姨妈日期


代码:
from datetime import datetime, date
import datetime as pt


# 计算大姨妈(姨妈日期,今日日期,周期,每月推迟天数
def get_mum(momday1, today, round, tempday):
    try:
        ym = 6
        mm_year = int(momday1.split("-")[0])
        mm_month = int(momday1.split("-")[1])
        mm_day = int(momday1.split("-")[2])
        momday = date(mm_year, mm_month, mm_day)
        sumdays = str(today.__sub__(momday)).split(" ")[0]
        days = int(int(sumdays) / round)
        TempDay = tempday * days
        delta = pt.timedelta(days=days * round + TempDay)
        startday = momday + delta
        delta = pt.timedelta(days=ym - 1)
        lastday = startday + delta
        if startday <= today <= lastday:
            if today != lastday:
                time1 = str(today.__sub__(startday))[0]
                mytext = '今天是来姨妈的第' + str(int(time1) + 1) + '天,还要坚持' + \
                         str(lastday.__sub__(today)).split(" ")[0] + '天哦'
            else:
                mytext = '今天是来姨妈的最后一天,明天就可以愉快地玩耍啦'
        else:
            a = int(str(lastday.__sub__(today)).split(" ")[0]) + 1
            if a <= 0:
                dy = 32 - ym - abs(a)
            else:
                dy = a - ym
            mytext = '大姨妈还有' + str(dy) + '天到达战场'
    except:
        mytext = ''
    return mytext


for i in range(0, 100):
    delta = pt.timedelta(days=i)
    today = datetime.date(datetime(year=2022, month=9, day=20))
    lastday = today + delta
    motertext = get_mum('2022-07-21', lastday, 31, 1)
    print('今日:' + str(lastday) + '\t\t' + motertext)

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值