Ir al contenido

Python/Generalidades/Cómo se compila Python

De Wikilibros, la colección de libros de texto de contenido libre.

Índice de la sección
«Generalidades»



Python es un lenguaje interpretado, lo cual quiere decir que no se compila; esto podría ser algo malo entonces, pero hoy en día, con la potencia de las máquinas actuales es preferible perder un poco de rendimiento en búsqueda de una mayor facilidad y rapidez a la hora de crear el código.

Para ejecutarlos

En Windows

Si ya tienes el ejecutable de python en el path:

python c:\ruta\a\miprograma.py

si no

c:\Python24\python c:\ruta\a\miprograma.py

En casi cualquier unix, si tienes python en el path

$ python /home/foolano/miprograma.py

¿Cómo se genera un fichero .exe?

[editar]

Para generar archivos .exe para MS Windows, hay que usar la utilidad py2exe. Esto genera un ejecutable que incluye el intérprete y el programa a interpretar, por lo que a efectos prácticos es compilar el programa. Para Linux existen cosas parecidas, pero no son prácticas porque la inmensa mayoría de los sistemas Linux tienen Python instalado o es muy fácil hacer que se instale como parte de la instalación de nuestro programa.

Pero, si deseamos optimizar un poco el programa u ocultar el código fuente de un script Python bajo Linux, podemos ejecutar "python -O mi_script.py" (o "python -OO mi_script.py", si deseamos optimizar al máximo bajo riesgo de que no funcione el programa), lo cual generará un archivo binario, "mi_script.pyc", por ejemplo, que hará un poco (muy poco) más rápido el programa. Eso sí, no se podrá ejecutar con "./mi_script.pyc". Se tendrá que usar "python mi_script.pyc".


Python: Índice · Introducción · Enlaces

Instalación de Python · Generalidades · Funciones, constantes nativas · Tipos de datos nativos · Herramientas de control de flujo · Definición de funciones · Leer y escribir archivos · Su primer programa en Python · Entrada y salida · Estructuras de datos · Errores y excepciones

Interfaces gráficas · Módulos relacionados con el sonido · Módulos relacionados con el tiempo · Módulos relacionados con la matemática