Empaquetando tu Aplicación Python en un Ejecutable con Py2exe

Empaquetando tu Aplicación Python en un Ejecutable con Py2exe

Python es un lenguaje de programación interpretado, lo que significa que no necesita ser compilado en un archivo binario para ser ejecutado. Esto lo hace muy versátil y portátil, pero también tiene algunas desventajas. Una de ellas es que los usuarios deben tener Python instalado en su sistema para ejecutar tus aplicaciones.

Para solucionar este problema, podemos usar un empaquetador para crear un archivo ejecutable de nuestra aplicación Python. Esto permitirá a los usuarios ejecutar nuestra aplicación sin necesidad de tener Python instalado.

En este tutorial, aprenderemos a empaquetar nuestra aplicación Python en un ejecutable con Py2exe. Py2exe es un empaquetador de Python gratuito y de código abierto que nos permite crear archivos ejecutables para Windows, Mac y Linux.

Requisitos

Para seguir este tutorial, necesitarás lo siguiente:

  • Python 3.7 o superior
  • Py2exe

Instalando Py2exe

Para instalar Py2exe, abre una terminal y ejecuta el siguiente comando:

pip install py2exe

Creando el archivo setup.py

El primer paso para empaquetar nuestra aplicación es crear un archivo llamado setup.py. Este archivo contiene la información que Py2exe necesita para empaquetar nuestra aplicación.

A continuación se muestra un ejemplo de archivo setup.py:

Python
import py2exe

# Indica el nombre del archivo principal de nuestra aplicación
# En este caso, nuestro archivo principal se llama "main.py"
main_script = "main.py"

# Indica las bibliotecas que nuestra aplicación necesita
# En este caso, nuestra aplicación necesita la biblioteca "numpy"
extra_modules = ["numpy"]

# Indica el nombre del archivo ejecutable que queremos crear
# En este caso, nuestro archivo ejecutable se llamará "mi_aplicacion.exe"
target_name = "mi_aplicacion"

# Crea el archivo ejecutable
py2exe.main([main_script, "-b", "-w", "-i", "mi_icono.ico", "-s", target_name])

En este ejemplo, nuestra aplicación principal se llama main.py y necesita la biblioteca numpy. El archivo ejecutable se llamará mi_aplicacion.exe y tendrá un icono llamado mi_icono.ico.

Ejecutando el archivo setup.py

Para empaquetar nuestra aplicación, ejecutamos el archivo setup.py en la terminal.

python setup.py

Esto creará una carpeta llamada dist que contiene el archivo ejecutable de nuestra aplicación.

Ejecutando el archivo ejecutable

Para ejecutar nuestro archivo ejecutable, simplemente hacemos doble clic en él.

Ejemplo

Para ver un ejemplo de cómo empaquetar una aplicación Python con Py2exe, podemos crear una aplicación simple que imprime «Hola, mundo!».

Python
# main.py
print("Hola, mundo!")

Luego, creamos un archivo setup.py como se muestra a continuación:

Python
import py2exe

# Indica el nombre del archivo principal de nuestra aplicación
main_script = "main.py"

# Indica el nombre del archivo ejecutable que queremos crear
target_name = "hola_mundo"

# Crea el archivo ejecutable
py2exe.main([main_script, "-b", "-w", "-s", target_name])

Finalmente, ejecutamos el archivo setup.py para empaquetar nuestra aplicación.

python setup.py

Esto creará una carpeta llamada dist que contiene el archivo ejecutable de nuestra aplicación, llamado hola_mundo.exe.

Para ejecutar nuestra aplicación, simplemente hacemos doble clic en el archivo hola_mundo.exe.

Conclusión

Py2exe es una herramienta sencilla que nos permite crear archivos ejecutables de nuestras aplicaciones Python. Esto permite a los usuarios ejecutar nuestras aplicaciones sin necesidad de tener Python instalado.