获取下一个月/年的日期

复制代码
import datetime
# 获取指定年前 年后
# 时间 操作 +-
def getYer(date, option, number):
    # 把传递过来时间格式化成年
    year = datetime.datetime.strftime(date, "%Y")
    # 用年默认为-操作
    newyear = int(year) - number
    # 如果是+ 进行加操作
    if option == '+':
        newyear = int(year) + number
    # 月日
    moth = datetime.datetime.strftime(date, '%m-%d')
    # 拼接 年 + 月日 结束时间
    end = '{}-{}'.format(newyear, moth)
    return end

end = datetime.datetime.now()
print(getYer(end,'+',1))

# 获取指定月
def get_Month(date, option, number):
    # 获取月
    month = datetime.datetime.strftime(date, '%m')
    if option == '+':
        year = datetime.datetime.strftime(date, '%Y')
        day = datetime.datetime.strftime(date, '%d')
        m = (int(month) + number) - 12
        # 如果传入的月+现在的月 -12 >0 就说明又是新的一年 让年+1 如果小于0 说明没有超过 就让现在的月份加上传入月份
        if m > 0:
            end = '{}-{}-{}'.format(int(year) + 1, m, day)
            return end
        else:
            end = '{}-{}-{}'.format(year, int(month) + number, day)
            return end
    else:
        list = [2, 4, 6, 8, 10]
        year = datetime.datetime.strftime(date, '%Y')
        day = datetime.datetime.strftime(date, '%d')
        m = (int(month) + 12) - number
        if m <= 12:
            end = '{}-{}-{}'.format(int(year) - 1, m, day)
        else:
            end = '{}-{}-{}'.format(year, int(month) - number, day)
        return end

print(get_Month(datetime.datetime.now(),'+',1))
复制代码

 

posted @   曹宝福  阅读(185)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示