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

2 Comments

  1. Harry
    Posted December 18, 2008 at 11:54 am | Permalink

    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.

  2. Posted December 18, 2008 at 1:28 pm | Permalink

    @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.

One Trackback

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

Post a Comment

Your email is never shared. Required fields are marked *

*
*