2009-09-16 16 views
43

¿Cómo puedo compilar y ejecutar un archivo de Python (extensión * .py)?Compilación de Python

+17

¿por qué los votos a favor? Parece una pregunta perfectamente válida para una persona que no está familiarizada con Python. – Glen

+7

especialmente procedente de C, C++, Java, etc. – geowa4

+4

-1: Por favor, consulte el tutorial de Python antes de preguntar aquí. http://docs.python.org/tutorial/ –

Respuesta

27

python yourfile.py

usted tiene que tener instalado Python en primer lugar. Automáticamente compilará su archivo en un binario .pyc, y luego lo ejecutará por usted. Se recompilará automáticamente cada vez que su archivo cambie.

http://www.python.org/download/

+1

No son archivos .pyc archivos de código de bytes – Will03uk

+1

Sí. Son byte-code y binarios, aunque no son "binarios" en el sentido tradicional de "el sistema puede simplemente ejecutarlos". –

15

Python compilan sus archivos de código de bytes antes de ejecutarlas. Eso significa que debe tener un intérprete de Python instalado en la máquina de destino.

Si no desea instalar Python en la máquina de destino use py2exe, py2app o algo similar.

+0

@gs: deberías haberlo referido al sitio web de Python http://docs.python.org/tutorial en lugar de hablar sobre py2exe y py2app –

+5

@Helen Neely, a veces es bueno obtener una respuesta específica rápidamente, en lugar de minar a través de un tutorial laborioso. Actualmente, una red de 3 personas ha encontrado útil esta pregunta; Eso deberia decirte algo. –

5

Para añadir a Paul McMillan's answer, si está en Windows y tiene instalado Python, a continuación, todos los archivos que terminan con la extensión ".py" debe estar asociado con el python ejecutable, lo que le permite funcionar de esta manera:

> myfile.py 

En * nix, puede comenzar el archivo con #!/usr/bin/python y ejecutarlo así:

$ ./myfile.py 

En los sistemas * nix, si los dos primeros caracteres de un archivo son #! entonces se ejecutará la fil e con el ejecutable especificado, que configuré aquí para que sea /usr/bin/python.

+1

En Windows, también me gusta agregar .py a la variable de entorno PATHEXT, lo que hace que los archivos .py sean ejecutables como .exe (es decir, sin escribir la extensión). Aún necesita Python instalado. –

+0

¡Ah! Debes hacer 'chmod u + x * .pyc' para darle al usuario permisos ejecutables ** y ** debe ser un archivo .pyc. Luego, puede hacer './Program.pyc' – dylnmc

+0

Me enteré de que puede hacer esto para las extensiones py pyc. El intérprete (en casi todos los casos) confía en el intérprete de Python para hacer esto. – dylnmc

1

En la mayoría de los sistemas tipo Unix, puede usar el shebang para indicarle al sistema operativo qué intérprete debe llamarse. Sólo tiene que poner

#!/path/to/python 

en la primera línea del archivo, donde, por supuesto, usted tiene que reemplazar "/ ruta/a /" con la ruta que tiene en su sistema. En la mayoría de los casos, esto sería "/ usr/bin/python" o "/ usr/local/bin/python". En los sistemas UNIX también se puede buscar la ruta con

"#!usr/bin/env python" 

o invocar el comando

which python 

para encontrar el camino. continuación, podrá ejecutar el programa con el comando

./yourprogram.py 

Si se le dice que no tiene permiso para hacerlo, hay que utilizar el comando

chmod a+x yourprogram.py 
8

Python es un lenguaje interpretado, por lo que no es necesario compilarlo; solo para ejecutarlo. Da la casualidad que la versión estándar de python compilará esto para "bytecode", al igual que Java etc., y lo guardará (en archivos .pyc) y lo ejecutará la próxima vez, ahorrándole tiempo, si no lo ha actualizado el archivo desde. Si ha actualizado el archivo, se volverá a compilar automáticamente.

También puede ejecutar python con un distintivo -O, que generará archivos .pyo en lugar de .pyc. No estoy seguro de que haga mucha diferencia. Si la velocidad es importante, usa psyco.

Y sí, en Unix (incluidos Linux, BSD y Mac OS X, o en un shell Unix en Windows) puede usar una línea shebang en la parte superior del archivo para hacer que el archivo se ejecute automáticamente usando python. En Windows, el equivalente es asociar archivos .py con python.exe y luego asegúrese de que su variable de entorno PATHEXT incluya extensiones ".PY".

Sin embargo, para Windows, lo más probable es que desee escribir un programa gui en python (posiblemente usando PyQT4 y ERIC4) que tiene un archivo .pyw como su script principal, y tiene .pyw asociado con pythonw (que viene con python en windows). Esto le permitirá ejecutar scripts de Python en Windows al igual que otros programas de GUI. Para publicar y distribuir, probablemente desee compilar en un archivo ejecutable usando algo como py2exe, como otros mencionaron.

+1

El idioma no está interpretado, la implementación es – Will03uk

10

Si lo que desea es compilar las fuentes, sin correr ellos, se puede hacer esto

compileall.py <directory> 

este comando compilará el código Python en ese directorio recursivamente

compileall script se encuentra normalmente en el directorio como

/usr/local/lib/python2.6 

es decir <prefix>/lib/python2.6 (o similar, dependiendo de prefijos establecer una configuración de python)

Como sugiere Lulu, debe asegurarse de que los archivos .pyc y .pyo resultantes sean ejecutables por los usuarios que le interesan.

compileall también se puede utilizar como un módulo

import compileall 
compileall.compile_dir(path) 
0

respuesta para Windows

  1. primero debe instalar Python
  2. a continuación, establecer variable de ruta
  3. después de que escriba su pitón programar y guardar
  4. piensan que hay un programa en Python que nombrar "hello.py"
  5. cmd.exe abierta
  6. continuación Goto el camino que ha guardado el archivo "hello.py",
  7. y escriba python hello.py y presione ingrese la clave.

ahora el código python se compila automáticamente y muestra el resultado.

+3

paso 0. enciende la computadora e inicia sesión en Windows .. –

Cuestiones relacionadas