fechahora día, semana, mes, trimestre

importar datatime
date = datetime.datetime.now()
 

Al día:

newdate = datetime.datetime.now()
condiciones = {'datadate': newdate}

昨天:
newdate = date + datetime.timedelta(days=-1)
condtions = {'datadate': newdate}

本周初:
newdate = now - datetime.timedelta(days=now.weekday())
condtions = {'datadate': newdate}

本周末:
newdate = now + datetime.timedelta(days=6 - now.weekday())
condtions = {'datadate': newdate}

上周初:
newdate = now - datetime.timedelta(days=now.weekday() + 7)
condtions = {'datadate': newdate}

上周末:
newdate = now - datetime.timedelta(days=now.weekday() + 1)
condiciones = {'datadate': newdate}

Al principio del mes:
newdate = date.replace(day=1)
condtions = {'datadate': newdate}

Al final del mes:
year = date.year
month = date.month
a, b = calendar.monthrange (año, mes) # a,b— —El primer día de la semana es el día de la semana (0-6 corresponde de lunes a domingo) y todos los días de este mes newdate = datetime.datetime(
year=year, month =mes, día=b) #Construir
condiciones de fecha y hora al final de este mes = {'datadate': newdate}

al final del mes pasado:
date_now = date.replace(day=1)
newdate = date_now + datetime.timedelta( days=-1)
condtions = {'datadate': newdate}

al comienzo del mes pasado:
date_now = date.replace(day=1)
date_now = date_now + datetime.timedelta(days=-1)
newdate = datetime.datetime( date_now.year, date_now.month, 1)
condiciones = {'datadate': newdate}

年初:
newdate = date.replace(month=1, day=1)
condtions = {'datadate': newdate}

年末:
newdate = date.replace(month=12, day=31)
condtions = {'datadate': newdate}

去年初:
newdate = date.replace(month=1, day=1)
newdate = newdate + datetime.timedelta(days=-1)
newdate = datetime.datetime(newdate.year, 1, 1)
condtions = {'datadate' : newdate}

去年末:
newdate = date.replace(month=1, day=1)
newdate = newdate + datetime.timedelta(days=-1)
condtions = {'datadate': newdate}

季初:
mes = (fecha. mes - 1) - (fecha.mes - 1) % 3 + 1
nuevafecha = fechahora.fechahora(fecha.año, mes, 1)
condiciones = {'fechadatos':newdate}

fin de temporada:
mes = (fecha.mes - 1) - (fecha.mes - 1) % 3 + 1
si mes == 10:
  nuevafecha = fechahora.fechahora(fecha.año + 1, 1, 1) + fechahora.horadelta(días= -1)
else:
  newdate = datetime.datetime(date.year, month + 3, 1) + datetime.timedelta(days=-1)
condtions = {'datadate': newdate}

上季初:
mes = (fecha.mes - 1) - (fecha.mes - 1) % 3 + 1
nuevafecha = fechahora.fechahora(fecha.año, mes, 1)
nuevafecha = nuevafecha + fechahora.horadelta(días=-1)
nuevafecha = fechahora.fechahora(nuevafecha. year, newdate.month - 2, 1)
condtions = {'datadate': newdate}

上季末:
month = (date.month - 1) - (date.month - 1) % 3 + 1 # 10
newdate = datetime. fechahora(fecha.año, mes, 1)
newdate = newdate + datetime.timedelta(days=-1)
condtions = {'datadate': newdate}

半年初:
mes = (fecha.mes - 1) - (fecha.mes - 1) % 6 + 1
nuevafecha = fechahora. fechahora(fecha.año, mes, 1)
condiciones = {'fechadatos': nuevafecha}

半年末:
mes = (fecha.mes - 1) - (fecha.mes - 1) % 6 + 1
si mes == 7:
  nuevafecha = datetime.datetime(date.year + 1, 1, 1) + datetime.timedelta(days=-1)
else:
  newdate = datetime.datetime(date.year, month + 6, 1) + datetime.timedelta(days= -1)
condiciones = {'fechadatos': nuevafecha}

上个半年初:
mes = (fecha.mes - 1) - (fecha.mes - 1) % 6 + 1
nuevafecha = fechahora.fechahora(fecha.año, mes, 1)
newdate = newdate + datetime.timedelta(days=-1)
newdate = datetime.datetime(newdate.year, newdate.month - 5, 1)
condtions = {'datadate': newdate}

上个半年末:
mes = (fecha. mes - 1) - (fecha.mes - 1) % 6 + 1
nuevafecha = fechahora.fechahora(fecha.año, mes, 1)
nuevafecha = nuevafecha + fechahora.timedelta(días=-1)
condiciones = {'fechadatos': newdate}


月平均值:
ms_newdate = date.replace(day=1)
me_newdate = date
new_date = (ms_newdate, me_newdate)

季平均值:
mes = (fecha.mes - 1) - (fecha.mes - 1) % 3 + 1
ss_newdate = fechahora.fechahora(fecha.año, mes, 1)
se_nuevafecha = fecha
nueva_fecha = (ss_nuevafecha, se_nuevafecha)

半年平均值:
mes = (fecha.mes - 1) - (fecha.mes - 1) % 6 + 1
hs_newdate = fechahora.fechahora(fecha.año, mes, 1)
he_newdate = fecha
new_date = (hs_newdate, he_newdate)

年均值:
ys_newdate = date.replace(month=1, day=1)
ye_newdate = date
new_date = (ys_newdate, ye_newdate)


if condiciones:
  query_res = Entry.objects.filter(**condtions).filter().exclude()
if new_date:
  query_res = Entry.objects.filter(datadate__range=new_date).filter().exclude()

Supongo que te gusta

Origin blog.csdn.net/Steven_yang_1/article/details/131391779
Recomendado
Clasificación