[pyar] ¿Se puede cambiar el objeto list de python?

Alejandro Santos listas en alejolp.com
Lun Nov 8 23:22:38 ART 2010


2010/11/8 Lucas <rollbak en gmail.com>:
> Coincido en q en general este estilo de cosas no es buena idea, pero como
> todo habria que analizar el contexto en el cual se lo quiere aplicar, quizas
> para este framework del q habla Hugo esta perfecto.
> Por otro lado hay lenguajes que te dejan hacer este estilo de cosas muy
> facilmente y con mecanismos creados para tal fin (es el caso de objective-c
> y sus categories y posses).
>

Tal cual, siempre hay algún caso en el que tiene sentido, pero en el
caso de un framework no me parece una buena idea.

Un buen framework mantiene las partes separadas. Haciendo que
promedio() sea una funcion suelta queda mucho más limpio, ya que estás
separando la estructura del algoritmo.

De esta forma podes calcular el promedio de cualquier secuencia que
implemente los iteradores de Python. Por ejemplo, el promedio de todos
los elementos de un set().

>>> def promedio(seq):
...     suma = 0.0
...     cant = 0
...     for x in seq:
...             suma += x
...             cant = cant + 1
...     return suma / cant

>>> promedio([1,2,3])
2.0
>>> promedio([2**x for x in xrange(5)])
6.2000000000000002
>>> promedio(set([1,1,2,2,3,3]))
2.0


-- 
Alejandro Santos
http://alejolp.com.ar



More information about the pyar mailing list