Estructura para una tabla?

Miquel Llover miquel en llover.org
Mie Jun 5 21:01:51 CEST 2002


At 20:03 05/06/02, you wrote:
> > Hola de nuevo!
> >
> > Parece que ya me funciona, pues tenía un error en el nombre del
> > diccionario.
> > Si en vez de ordenar una lista de pedidos, lo que quisiera es que me
> > devolviera una lista de pedidos ordenada pero sin alterar la
> > original, como
> > lo debería hacer? He intentado lo siguiente:
> >
> >      def ordena_pieza(self):
> >          comp_pieza = pedido.compara("pieza")
> >          l_aux = self.l
> >          return l_aux.sort(comp_pieza)
> >
> > Pero continua modificandome la lista de pedidos original. Como debería
> > hacer la copia?
>
>ya habrás deducido que el metodo .sort(...) de las listas ordenan en el
>lugar.
>
>pero veo también que Python te ha mostrado su verdadera cara! :-D
>
>l_aux = self.l NO copia la lista, solo estas tomando otra referencia
>a la misma lista. la forma mas directa de copiar una lista es:
>
>l_aux = self.l[:]
>
>o sea, mediante una "rebanada" (slice) de la lista que abarca toda la
>lista.

Vale, el método me queda de la siguiente forma:

       def ordena_pieza(self):
           comp_pieza = pedido.compara("pieza")
           l_aux = self.l[:]
           return l_aux.sort(comp_pieza)

Pero si hago:

# Me muestra el contenido de la lista (antes he definido el método __repr__ 
como he visto
# que hacía Chema; la mar de práctico!)

print pedidos

# Entiendo que el método de ordenar me devuelve una lista de pedidos ordenada
# que asigno a otra variable lista_de_pedidos

pedidos_por_pieza = pedidos.ordena_pieza()

# Aqui me muestra "None"!!!!!!!!!!!!!!
print pedidos_por_pieza

¿Qué hago mal?

Gracias,

Miquel

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

------------------------------------------------
Miquel Llover
<miquel en llover.org>
------------------------------------------------






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