python根据开始结束日期解析获得日周月
(b_datedays):day=datetime.timedelta(=)i(days):b_date+day*i(start_date=end_date=):(start_datedatetime.datetime)(end_datedatetime.datetime):start=start_dateend=end_date:start=datetime.datetime.strptime(start_date)end=datetime.datetime.strptime(end_date)end=end+datetime.timedelta(=)data=[]dgen_dates(start(end-start).days):data.append(d.strftime())data
ParseDate(TimeSpecType):DaysOneWeek=DaysOneWeekDaysOneMonth=DaysOneMonth():.__choices__=((.day.parse_date_by_day)(.week.parse_date_by_week)(.month.parse_date_by_month))(value):_names=((e[]e[])e.__choices__)_names.get(value)(value):_names=((e[]e[])e.__choices__)_names.get(value)(start_dateend_date):weeklist=[](start_datedatetime.datetime)(end_datedatetime.datetime):start=start_dateend=end_date:start=datetime.datetime.strptime(start_date)end=datetime.datetime.strptime(end_date)max_timedelta=end-startmax_weeks=(math.ceil(max_timedelta.days/.DaysOneWeek)+)first_start_week_day=start.weekday()first_week_sunday=start+datetime.timedelta(=(.DaysOneWeek-first_start_week_day-))first_week_sunday>=end:temp={:start:end}weeklist.append(temp)weeklist:temp={:start:first_week_sunday}weeklist.append(temp)i(max_weeks):monday=first_week_sunday+datetime.timedelta(==i)sunday=monday+datetime.timedelta(=)monday>=end:temp={:monday:end}weeklist.append(temp)sunday<=end:temp={:monday:sunday}weeklist.append(temp):temp={:monday:end}weeklist.append(temp)weeklist(start_dateend_date):monthlist=[](start_datedatetime.datetime)(end_datedatetime.datetime):start=start_dateend=end_date:start=datetime.datetime.strptime(start_date)end=datetime.datetime.strptime(end_date)max_timedelta=end-startmax_months=(math.ceil(max_timedelta.days/.DaysOneMonth)+)first_month=start.monthfirst_year=start.yearfirstDayWeekDaymonthlen=calendar.monthrange(first_yearfirst_month)last_day_of_first_month=datetime.datetime(=first_year=first_month=monthlen)last_day_of_first_month>=end:temp={:start:end}monthlist.append(temp)monthlist:temp_first_day=last_day_of_first_month+datetime.timedelta(=)temp={:start:last_day_of_first_month}monthlist.append(temp)i(max_months):year=temp_first_day.yearmonth=temp_first_day.monthfirstDayWeekDaymonthRange=calendar.monthrange(yearmonth)temp_last_day=datetime.datetime(=year=month=monthRange)temp_first_day>=end:temp={:temp_first_day:end}monthlist.append(temp)temp_last_day<=end:temp={:temp_first_day:temp_last_day}monthlist.append(temp)temp_first_day=temp_last_day+datetime.timedelta(=):temp={:temp_first_day:end}monthlist.append(temp)monthlist(start_dateend_date):daylist=[]days=get_date_list(start_dateend_date)daydays:day_datetime=datetime.datetime.strptime(day)temp={:day_datetime:day_datetime}daylist.append(temp)daylist
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。