Ver Mensaje Individual
  #3 (permalink)  
Antiguo 05/12/2012, 15:17
Avatar de razpeitia
razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Formas de optimizar un script en python

Cita:
Iniciado por ger84 Ver Mensaje
¿Es significativa la diferencia entre crear un bucle con for ..xrange a crearlo con un while?
Si, si la hay. Puedes crear 2 funciones y compararlas. Puedes compararlas con timeit o con dis

Cita:
Iniciado por ger84 Ver Mensaje
¿Existirán métodos/funciones mas rápidas que len(), divmod(), str(), int(), list.index(), las funciones de itertools, math etc?
No creo que existan funciones mas rápidas a menos que uses numpy para operaciones con matrices.

Cita:
Iniciado por ger84 Ver Mensaje
¿Es significativa la diferencia entre usar los métodos de los strings para búsqueda y manipulación en un texto, a una expresión regular?
De preferencia usa los métodos de los strings, a menos que necesites capturar text es mejor usar expresiones regulares.

Cita:
Iniciado por ger84 Ver Mensaje
¿Cuan rápida es la carga de librerías C con ctypes y la ejecución de funciones?, es decir, ¿ganaré velocidad si hago esto?
Si, si ganaras velocidad. Pero digamos que vas en contra de 2 principios.

Cita:
Iniciado por ger84 Ver Mensaje
¿Cómo puedo medir la velocidad de ejecución de un script python?
Con el modulo timeit

Cita:
Iniciado por ger84 Ver Mensaje
¿Existen interpretes mas veloces para python que el que trae por defecto? (no importa mucho la estabilidad, es para hacer estos cálculos)
PyPy

Aclaraciones:
Primera regla de la optimización en programación:
No lo hagas.

Segunda regla de la optimización en programación (solo para expertos):
No lo hagas. (Aun!).

Yo también resolví algunos cuantos problemas en project euler, todos los que resolví fueron con python a secas. La clave esta en tener un buen set de algoritmos y creatividad.



Solo recuerda una nota al final de la pagina de problemas:
Cita:
Iniciado por ProjectEuler.net
Please do not contact Project Euler if you are unable to solve a particular problem. If you can't solve it, then you can't solve it!

Última edición por razpeitia; 05/12/2012 a las 15:23