Pregunta

Estoy usando cx_Freeze para congelar mi programa de pitón. En el funcionamiento cx_Freeze, un montón de archivos se crean PYD, un montón de archivos PYC se ponen en un archivo llamado library.zip y algunos archivos DLL están allí también.

Podría alguien decirme la diferencia entre el PYD los archivos y PYC? ¿Cuál es la razón para que los archivos no están en el PYD library.zip? ¿Es posible poner los archivos en el archivo PYD así?

Gracias.

¿Fue útil?

Solución

Renuncia: No he utilizado cx_Freeze en cuando ......

archivos .PYD son archivos de código máquina DLL que contienen funciones específicas de pitón-requerido.

Los archivos son archivos .py .pyc que se han compilado en bytecode.

por lo PYDS son código de máquina y PYCs son de código de bytes

Ahora en cuanto a por qué los PYDS no están en el .zip .... me imagino que es porque esos .PYDs son necesarios por el intérprete de Python para ejecutar el programa. Lo cx_Freeze hace es básicamente la siguiente:

  1. compilar todos los archivos .py y tirar los archivos .pyc en una postal
  2. poner todos los archivos necesarios en el .pyd postal
  3. crear un archivo apéndice .py y ponerlo en el directorio de salida
  4. copiar el python.exe y de cambio de nombre a MyProgram.EXE
  5. copiar todos los archivos necesarios .pyd para abrir el .zip y ejecutar el contenido

Así que usted no está realmente compilar su archivo de pitón, que está en lugar de cambiar el nombre del interpeter y la congelación de todos los archivos de origen.

Espero que esto ayude.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top