Ingresar:

Python :: Blog :: python: better, faster, smarter

November 24, 2006

Lo que me gusta de python es la legibilidad, hasta ni parece lenguaje de programación, parece pseudocódigoGui�o
 

Por ejemplo, tomando el código de ejemplo en c# de otro post (aunque poco tiene que ver con lo que quiero mostrar) :

 public void Linq92() {
   double[] doubles = { 1.7, 2.3, 1.9, 4.1, 2.9 };

   double product = doubles.Fold((runningProduct, nextFactor) => runningProduct * nextFactor);

   Console.WriteLine("Total product of all numbers: {0}", product);
}

 En C/Java (si mi intuición no me falla Chulo) se tendría que inicializar una varibale, recorrer todo el arreglo, agarrar de dos en dos, multiplicarlos y guardarlos en nuestra variable inicial.

 El anterior código en python:

 def Linq92():
    doubles = [1.7, 2.3, 1.9, 4.1, 2.9]
    product = reduce(operator.mul, doubles)
    print 'Total product of all numbers: %s' % product

operator.mul  es el operador de multiplicación *. Usando funciones lambda cambiaría la siguiente línea:

    product = reduce(lambda x,y: x*y, doubles)

Otra cosa que me gusta son los generadores, que de eso publicaré algo luego. 

Les dejo una presentación de Alex Martelli autor de reconocidos libros sobre python, que ahora trabaja para google como Uber Technical Lead principalmente en proyectos con c++ y python.

Better, Faster, Smarter

Python: yesterday, today, tomorrow... 



Palabras clave: better, faster, python, smarter

Enviado por Rho @ Python


Debes iniciar sesión para enviar un comentario.