Sé que este es un hilo más antiguo, pero quería dar lo que creo que es información útil.
Yo personalmente uso PyPy que es muy fácil de instalar usando pip.Intercambiamos de forma intercambiable el intérprete Python/PyPy, no necesitas cambiar tu código y he descubierto que es aproximadamente 40 veces más rápido que el intérprete de Python estándar (Python 2x o 3x). Utilizo PyCharm Community Edition para administrar mi código y me encanta.
Me gusta escribir código en python ya que creo que te permite enfocarte más en la tarea que en el idioma, lo cual es una gran ventaja para mí. Y si necesita que sea aún más rápido, siempre puede compilarlo en un binario para Windows, Linux o Mac. Según mi experiencia, obtuve una aceleración de aproximadamente 3.5x sobre PyPy al compilar, lo que significa que es 140 veces más rápido que Python. PyPy está disponible para Python 3x y 2x code y de nuevo si usas un IDE como PyCharm puedes intercambiar entre decir PyPy, Cython y Python muy fácilmente (aunque requiere un poco de aprendizaje inicial).
Algunas personas pueden discutir conmigo sobre esto, pero me parece que PyPy es más rápido que Cython. Sin embargo, ambos son excelentes opciones.
Editar: me gustaría hacer otra nota rápida sobre la compilación: cuando se compila, el binario resultante es mucho más grande que su script en Python, ya que se basa en él todas las dependencias, etc, pero luego tienes unos pocos beneficios distintivos: ¡velocidad !, ahora la aplicación funcionará en cualquier máquina (dependiendo del sistema operativo para el que haya compilado, si no todo. lol) sin Python ni bibliotecas, también ofusca su código y está listo técnicamente para la "producción". Algunos compiladores también generan código C, que realmente no he visto ni visto si es útil o simplemente un galimatías. Buena suerte.
Espero que ayude.
Por mucho que Python pierda puntos de referencia, tenga en cuenta que esa ralentización de 50x o 100x sigue siendo negaba si el cálculo finaliza en unos pocos segundos en Python, y ni siquiera es verdadero cuando hace muchas E/S o tiene una horrible algoritmo. En lugar de preguntar "¿cuánto más lento es Python?" deberías preguntar "¿Python es lo suficientemente rápido?" (y lo más probable es que, honestamente) - eso también es más rápido que el benchmarking o preguntando aquí. – delnan
Implementar un algoritmo en python es bastante rápido y directo ... simplemente tienes que hacerlo y luego verificar si es lo suficientemente rápido. La mayoría de las veces puede optimizar ** el algoritmo ** para que se ejecute mucho más rápido utilizando diferentes estructuras de datos (dict/sets en lugar de listas ...) o diferentes operaciones. De todos modos, debe ocurrir la optimización ** después de que ** ya haya implementado un primer borrador del algoritmo y lo haya evaluado/perfilado. – Bakuriu
@delnan: en mi caso todo se trata del tiempo de cálculo. Si la variante C necesita x horas menos, invertiría ese tiempo en dejar que los algoritmos se ejecuten más tiempo/más. Simplemente quiero saber (más o menos) cuánto más lento sería Python; si solo son unas pocas horas, ciertamente no utilizaría un lenguaje con el que no me sienta cómodo (puede arruinar las mejores soluciones a los problemas con malas implementaciones: PAG). – CrazyFlyingCloseline