Red de conocimiento informático - Conocimiento del nombre de dominio - Cómo generar exe desde Python

Cómo generar exe desde Python

Python es un lenguaje de scripting que es interpretado y ejecutado por un intérprete. Su método de lanzamiento:

archivo .py: para proyectos de código abierto o donde el código fuente no es tan importante, el código fuente se proporciona directamente y el usuario debe instalar Python y varias bibliotecas dependientes por sí mismo. (Esto es lo que hacen varios paquetes de instalación oficiales de Python)

Archivo .pyc: algunas empresas o individuos no quieren que el operador vea el código fuente debido a la confidencialidad o por diversas razones, por lo que pueden usar pyc. archivos para publicarlo El archivo pyc es un código binario que puede ser reconocido por el intérprete de Python, por lo que es multiplataforma después del lanzamiento. Los usuarios deben instalar la versión correspondiente de Python y las bibliotecas dependientes.

Archivos ejecutables: para los no programadores o los usuarios novatos, sería un desastre si les pidieras que instalaran Python y al mismo tiempo lanzaran un montón de bibliotecas dependientes. Para estos usuarios, la forma más sencilla es proporcionar un archivo ejecutable y simplemente decirles cómo usarlo. Lo que es más problemático es que es necesario empaquetar diferentes archivos ejecutables para diferentes plataformas (Windows, Linux, Mac,...).

Este artículo presenta principalmente el último método. Tanto .py como .pyc son relativamente simples y Python puede manejarlos. Hay muchas formas de empaquetar scripts de Python en archivos ejecutables. Este artículo se centra en PyInstaller.

Introducción al principio de PyInstaller

PyInstaller en realidad empaqueta el analizador de Python y su propio script en An. El archivo ejecutable es completamente diferente de compilarlo en código de máquina real, por lo que no espere que empaquetarlo en un archivo ejecutable mejore la eficiencia operativa. Por el contrario, puede reducir la eficiencia operativa. utilizado en la máquina del operador. Instale Python y las bibliotecas de las que depende su script. En el sistema operativo Linux, utiliza principalmente los comandos ldd y objdump en el paquete de herramientas binutil.

PyInstaller ingresa el script que usted especifica, primero analiza otros scripts de los que depende el script, luego busca, copia y recopila todos los scripts relacionados, incluido el analizador de Python, y luego coloca estos archivos en un directorio o los empaqueta. en un archivo ejecutable.

Puedes publicar directamente los archivos en toda la carpeta de salida o en el archivo ejecutable generado. Solo necesita decirles a los usuarios que su aplicación es autónoma y no requiere la instalación de otros paquetes o una determinada versión de Python antes de poder ejecutarla directamente.

Cabe señalar que los archivos ejecutables empaquetados por PyInstaller solo se pueden utilizar en el mismo entorno que el sistema de la máquina empaquetadora. En otras palabras, no es portátil y debe empaquetarse para esa plataforma si necesita ejecutarse en un sistema diferente.

pyinstaller empaqueta scripts de Python en programas ejecutables para que puedan ejecutarse en máquinas sin un entorno Python

La última versión es pyinstaller 3.1.1. Admite python2.7 y python3.3.

Puede ejecutarse en los sistemas operativos Windows, Mac y Linux.

Pero no está compilado de forma cruzada, lo que significa que el exe generado por PyInstaller en Windows solo puede ejecutarse en Windows, y el exe generado en Linux solo puede ejecutarse en Linux.

Instalación de pyinstaller en Windows

Utilice el comando pip install pyinstaller

En Windows, pyinstaller requiere el soporte de PyWin32. Cuando no se encuentra PyWin32 al instalar pyinstaller con pip, pypiwin32 se instalará automáticamente.

Embalaje

La aplicación empaquetada no contiene ningún código fuente, pero el archivo .pyc del script sí está empaquetado.

Sintaxis básica:

opciones de pyinstaller myscript.py

Los parámetros opcionales comúnmente utilizados son los siguientes:

--onefile empaqueta los resultados en un archivo ejecutable

--onedir empaqueta todos los resultados en una carpeta, que incluye un archivo ejecutable y archivos dependientes necesarios para la ejecución del archivo ejecutable (predeterminado)

--paths= DIR Establece la ruta de importación

--distpath=DIR Establece la ruta donde se colocará el archivo de resultados empaquetado

--specpath=DIR Establece la ruta donde se colocará el archivo de especificaciones

--windowed usa el subsistema de Windows para ejecutar y no abrirá la línea de comando (solo válido para Windows)

--nowindowed usa el subsistema de consola para ejecutar (predeterminado) (solo válido para Windows) )

--icon=lt; FILE.ICOgt; Agregar file.ico como recurso del archivo ejecutable (solo válido para Windows)