Python compila los archivos .py y los guarda como archivos .pyc para que pueda hacer referencia a ellos en invocaciones posteriores. El .pyc contiene el bytecode compilado de los archivos fuente de Python, que es a lo que el intérprete de Python compila la fuente. Este código es ejecutado por la máquina virtual de Python. No hay ningún daño en eliminarlos (.pyc), pero ahorrarán tiempo de compilación si está procesando mucho.
Python es un lenguaje interpretado, a diferencia de uno compilado, aunque la distinción puede ser borrosa debido a la presencia del compilador de bytecode. Compilar generalmente significa convertir a código de máquina, que es lo que se ejecuta más rápido. Pero los intérpretes toman texto legible por humanos y lo ejecutan. Pueden hacer esto con una etapa intermedia.
Por ejemplo, cuando ejecuta el archivo fuente myprog.py, el intérprete de Python primero busca si myprog.pyc
existe alguno (que es la versión compilada de código de bytes myprog.py
) y si es tan reciente o más reciente que myprog.py
. Si es así, el intérprete lo ejecuta. Si no existe, o myprog.py
es más reciente de lo que (lo que significa que ha cambiado el archivo de origen), el intérprete primeras compilaciones myprog.py
a myprog.pyc
.
Hay una excepción al ejemplo anterior. Si coloca #! /usr/bin/env python
la primera línea de myprog.py
, hágalo ejecutable y luego ejecútelo myprog.py
solo.