在网上看了很多操作月份的代码,需要引包。我就自己写了一个,欢迎大家点评。如果感觉写的可以请留下一个赞,如果发现BUG时,非常感谢你提醒我。
话不多说,上代码。
#!D:/Code/python
# -*- coding: utf-8 -*-
# @Time :2021/6/12 15:05
# @Author : NZL
# @File : 1.py
# @Desc :
import datetime
import math
def change_time_month(dateTimeStr, c_month):
"""
改变时间的 月份
:param dateTimeStr:
:param c_month: 可正 可负 正为增加月份 负为减少月份
:return:
"""
c_data = datetime.datetime.strptime(str(dateTimeStr), "%Y-%m-%d %H:%M:%S")
year = c_data.year
month = c_data.month
day = c_data.day
hour = c_data.hour
minute = c_data.minute
second = c_data.second
month = int(month + math.fabs(c_month))
c_year = int(month / 12)
if c_year > 0:
if c_month > 0:
year += c_year
month -= 12 * c_year
month = 12 if month == 0 else month
else:
year -= c_year
month = 12 - month % 12
if month == 2 and day > 28:
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
if day > 29:
day -= 29
month += 1
else:
day -= 28
month += 1
return datetime.datetime.strptime('%s-%s-%s %s:%s:%s' % (year, month, day, hour, minute, second),
"%Y-%m-%d %H:%M:%S")
if __name__ == '__main__':
print(change_time_month('2025-12-29 04:25:04', 10))
欢迎大家点评!
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/damo01/article/details/117847774