foros de software libre :: chat #softwarelibre :: socios :: siguiente web/blog»

23rd Oct 2008

Compilar Python a ByteCode

La forma de correr un programa echo en python normalmente es como un script:

$ python programa.py

Pero existe la formar de obtener un ByteCode de python y obtener mejor rapidez en nuestras aplicaciones. Python está escrito en C, por lo que convertir un código de python a ByteCode resulta accesible, este ByteCode generado es puede ejecutarse gracias a CPython Interpreter.

La manera de hacerlo es la siguiente

1. Entramos al interprete de python.

$ python

2. Una vez dentro, importamos nuestro modulo a compilar

>>> import mimodulo

3. Ahora debemos importar una librería que nos permitirá compilar nuestro modulo ya importado

>>> import py_compile

4. Ejecutamos la función y compilamos.

>>> py_compile.compile("mimodulo.py")

5. Y listo. Ahora podemos correr nuestro programa ByteCode.

$ chmod +x mimodulo.pyc
$ ./mimodulo.pyc

Enlaces:

effbot.org

3 Responses to “Compilar Python a ByteCode”

  1. codeplasticlesthack » Blog Archive » Python: Convertir Scripts .py a .exe Says:

    [...] el post anterior les mostré como generar un ByteCode de scripts de python en linux, pero para aquellos quienes [...]

  2. Harry Says:

    Hola! Mi pregunta es si una vez compilado se siguen necesitando las bibliotecas usados en el script. Es decir si yo uso una biblioteca y compilo, el ordenador en el que ejecuto el código compilado necesita tener las bibliotecas instaladas?
    Muchas gracias.

  3. lesthack Says:

    @Harry, buena pregunta, y lo lamentable del asunto es que si, es necesario tener las bibliotecas instaladas en el sistema, debido a que el código generado (Bytecode) no es meramente binario si no un intermedio entre este y el lenguaje python para acelerar la velocidad de procesamiento (como el .class de java). Espero haber resuelto tu duda.

Leave a Reply