Calcular edad

Manuel Enrique González Ramírez maengora en gmail.com
Mie Ene 2 17:34:05 CET 2008


Excelente, muchas gracias por compartir tus conocimientos con la comunidad
python.

2008/1/1, Chema Cortes <py en ch3m4.org>:
>
> El Sunday 30 December 2007 17:14:08 Chema Cortes escribió:
>
> > Para la solución más general, la que saca años, meses y días, también le
> > pasa lo mismo, aparte de que calcula mal. He intentando crear una
> versión
> > basada en la clase SureDate, pero todavía no la he acabado.
>
> Ya la tengo completada y revisada (la clase SureDate del mensaje anterior
> tenía errores):
>
>
> #-*- coding: latin1 -*-
>
> import datetime
>
> class SureDate(datetime.date):
>   def replace(self,**kw):
>     day=kw.get("day",self.day)
>     kw["day"]=1
>     delta=datetime.timedelta(day-1)
>     return datetime.date.replace(self,**kw)+delta
>
> dnacim=SureDate(1976,05,26)
> dhoy=SureDate.today()
>
> #último cumpleaños
> d0=dnacim.replace(year=dhoy.year)
> if d0>dhoy:
>   d0=dnacim.replace(year=dhoy.year-1)
>
> #último cumplemeses
> d1=dnacim.replace(month=dhoy.month,year=dhoy.year)
> if d1>dhoy:
>   if dhoy.month==1:
>     d1=dnacim.replace(month=12,year=dhoy.year-1)
>   else:
>     d1=dnacim.replace(month=dhoy.month-1,year=dhoy.year)
>
> edad=d0.year-dnacim.year
> meses=d1.month-d0.month
> if meses<0:
>   meses+=12
> dias=(dhoy-d1).days
>
> print (edad,meses,dias)
> _______________________________________________
> Lista de correo Python-es
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
>
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es