¿Hay alguna diferencia en la programación de python al usar solo python y al usar el compilador pypy? Quería probar usar pypy para que el tiempo de ejecución de mi programa sea más rápido. ¿Funciona también toda la sintaxis que funciona en python en pypy? Si no hay diferencia, ¿puedes decirme cómo puedo instalar pypy en debian lunux y algunos ejemplos de uso en pypy? Google no contiene mucha información sobre pypy aparte de su descripción.Uso del compilador pypy
Respuesta
Desde el PyPy features page:
PyPy 1.9 implementa Python 2.7.2 y se ejecuta en Intel x86 (IA-32) y plataformas x86_64, con ARM y PPC estar en marcha. Es compatible con todos los el lenguaje principal, pasando el conjunto de pruebas de Python.
Esto significa que casi cualquier código que haya escrito en Python 2.7 funcionará. Las únicas excepciones que vale la pena mencionar son algunas extensiones de Python escritas en C, como numpy
.
La instalación debe ser bastante fácil, puede download a linux binary from here. Luego simplemente extrae el intérprete. A partir de este punto, puede ejecutar sus programas de Python de forma similar a cómo los ejecutaría con el intérprete de Python normal.
En la línea de comandos, en lugar de:
python my_program.py
Uso:
path/to/where/you/installed/pypy my_program.py
Para ver ejemplos de cómo/por qué es posible que desee utilizar PyPy, echa un vistazo a this video de PyCon 2012.
pypy es una implementación alternativa compatible del lenguaje python. Esto significa que hay pocas diferencias (intencionales). Una de las pocas diferencias es que pypy no utiliza el recuento de referencias. Esto significa, por ejemplo, que debe cerrar manualmente sus archivos, no se cerrarán automáticamente cuando su variable de archivo quede fuera del alcance como en CPython.
"* pocas diferencias intencionales de sintaxis"? A diferencia de ninguno? ¿Podría darnos alguna diferencia sintáctica? – delnan
Ah descuidado de mi parte Quise decir diferencias, no específicamente diferencias de sintaxis. –
Los archivos * se cerrarán automáticamente, no puede confiar en que suceda de inmediato. Entonces 'abrir ('foo', 'w'). Write ('test'); print open ('foo', 'r'). read() 'no es probable que imprima" prueba ". Pero eso es malo Python de todos modos, ya que (a) los documentos oficiales de Python no garantizan que se utilizará, y lo más importante (b) depender de un efecto secundario provocado por cosas que van fuera del alcance para tener un impacto significativo en el camino su programa opera es una * violación * grave de "explícito es mejor que implícito". – Ben
- 1. Uso del módulo de socket en el espacio aislado Pypy
- 2. uso de memoria pypy crece para siempre?
- 3. Stackless en PyPy y PyPy + greenlet - diferencias
- 4. PyPy - SWIG - QuickFix mix
- 5. ¿Por qué aparece una advertencia del compilador cuando uso ContinueWith?
- 6. instalando zeromq bajo pypy
- 7. ¿PyPy funciona con Py2Exe?
- 8. Usando Numpy con pypy
- 9. Unicode, expresiones regulares y PyPy
- 10. ¿Cómo usar PyPy en Windows?
- 11. easy_install with pypy while Python is installed
- 12. PyPy en Windows 7 x64?
- 13. Biblioteca de GUI para PyPy
- 14. ¿Cómo usar PIL con PyPy?
- 15. Destino del mejor compilador
- 16. Xcode Indicador del compilador del proyecto
- 17. Casos de prueba del compilador o cómo probar un compilador
- 18. Caché del compilador para Scala?
- 19. Java 1.3.1, errores del compilador
- 20. configuración predeterminada del compilador maven
- 21. Optimizador del compilador delegado C#
- 22. Optimizaciones del compilador de Erlang
- 23. Optimización del compilador, ¿Thread Safe?
- 24. VC++ Error interno del compilador
- 25. Subrutinas puras en Fortran - Optimización del compilador
- 26. Cómo instalar/usar cx_Oracle en PyPy
- 27. PyPy: ¿cómo puede vencer a CPython?
- 28. ¿Por qué PyPy se traduce tan lento?
- 29. PyPy: ¿De qué se trata todo esto?
- 30. Inicialización de memoria específica del compilador
También vea http://pypy.org/compat.html que enumera todas las principales diferencias conocidas entre PyPy y el 2.x actual CPython, y tiene un enlace a todas las diferencias conocidas hasta un nivel de detalle insignificante. – abarnert
¿no es pypy más rápido en general? Cuando ejecuto mi programa usando pypy, está tardando el doble de tiempo que la ejecución normal de un script de python. extraño...!! –
Pypy será más rápido en muchos casos, pero no en todos. Es más probable que vea aceleraciones más grandes en programas de ejecución más grandes y más largos. Hay una comparación de velocidad entre CPython y PyPy en varias tareas diferentes aquí: http://speed.pypy.org/. Observe que PyPy mejora mucho más que otras. – Wilduck