Como ordenar fechas de menor a mayor

Amm-Python python en ammsoft.com
Vie Dic 31 16:32:12 CET 2004


Para ordenar una lista es suficiente con lista.sort()
Como son fechas, lo que quieres ordenar, la cosa se complica. Pero si la
lista es de tres colunnas año, mes y dia ...
Mirate esta receta, puede que que ayude.
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/305321

Incluso,a lo mejor, es más fácil todavía:
>>> import datetime
>>> a = datetime.date(2004,2,1)
>>> b = datetime.date(2004,1,21)
>>> l =[a,b]
>>> l
[datetime.date(2004, 2, 1), datetime.date(2004, 1, 21)]
>>> l.sort()
>>> l
[datetime.date(2004, 1, 21), datetime.date(2004, 2, 1)]
>>> 

> -----Mensaje original-----
> De: python-es-bounces en aditel.org 
> [mailto:python-es-bounces en aditel.org] En nombre de Rasta Popoulus
> Enviado el: divendres, 31 / desembre / 2004 13:20
> Para: python-es en aditel.org
> Asunto: [Python-es] Como ordenar fechas de menor a mayor
> 
> 
> El problema es que tengo q crear un programa que lea una 
> lista de fechas, y 
> hasta ahí va bien la cosa. El problema es que se pide que se 
> ordene esa 
> lista de menor a mayor, con algun algoritmo de ordenación e 
> imprimir las 
> fechas debidamente ordenadas. A continuación pongo el esquema 
> de lo hecho 
> hasta ahora, para ver como se puede cuadrar y si hace falta 
> cambia algo:
> 
> from record import record
> 
> class TFecha(record):
>   anyo=0
>   mes=0
>   dia=0
> 
> #Función para crear el registro y leer sus datos
> def leerFecha():
>   fec=TFecha()
>   fec.anyo=int(raw_input("Introduzca e año: "))
>   fec.mes=int(raw_input("Introduce el mes: "))
>   fec.dia=int(raw_input("Introduce el dia: "))
>   return fec
> 
> #Función para leer las fechas e introducirlas en la lista 
> hasta que el 
> usuario quiera
> def leerListaFecha(lista):
>   opc="s"
>   while opc=="s" or opc== "S":
>     fec=leerFecha()
>     lista.append(fec)
>     opc=raw_input("¿Desea introducir más fechas (S/N)? ")
> 
> #Función para imprimir las fechas de menos a mayor
> def imprimirMenMay(lista):
> ¿Y ahora qué?
> 
> #Programa principal
> #Creamos el vector vacio
> lista=[]
> leerListaPersonas(lista)
> imprimirMenMay
> 
> _________________________________________________________________
> Acepta el reto MSN Premium: Correos más divertidos con fotos y textos 
> increíbles en MSN Premium. Descárgalo y pruébalo 2 meses gratis. 
> http://join.msn.com?XAPID=1697&DI=1055&HL=Footer_mailsenviados
_correosmasdivertidos

_______________________________________________
Python-es mailing list
Python-es en aditel.org http://listas.aditel.org/listinfo/python-es




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