ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、视频、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
| 求一个时间点的前一个月和后一个月 | | | --- | --- | ``` import datetime import time import calendar #获取当前时间 current_time = datetime.datetime.now() #2019-08-13 14:24:25.883771 #获取本月第一天 first_day = datetime.date(current_time.year, current_time.month, 1) #2019-08-01 #获取前一个月最后一天 pre_month = first_day - datetime.timedelta(days = 1) #2019-07-31,本月第一天-一天时间 #获取前一个月的第一天 first_day_of_pre_month = datetime.date(pre_month.year, pre_month.month, 1) #2019-07-01 #获取下个月的第一天 days_num = calendar.monthrange(first_day.year, first_day.month)[1] #31,获取当前月有多少天 first_day_of_next_month = first_day + datetime.timedelta(days = days_num) #2019-09-01,本月第一天+当前月天数,或者下个月第一天-一天时间 ``` | 获取下一个月的指定的日期 | | | --- | --- | ``` ## # [get_next_month] [获取下一个月的指定的日期] # @param [days] [指定的天数,日期] # @return [返回下个月指定日期] ## def get_next_month(days): current_time = datetime.datetime.now() days_num = calendar.monthrange(first_day.year, first_day.month)[1] #本月的天数 next_month = first_day + datetime.timedelta(days = days_num) #下个月一号 next_days_num = calendar.monthrange(next_month.year, next_month.month)[1] #下个月的天数 replace_day = days if days < next_days_num else next_days_num #指定的日期(天数) return next_month.replace(day=replace_day) #把天数替换成指定的天数 ```