¿Cuál es la líneaPython comentario encabezado fuente
#!/usr/bin/env python
en la primera línea de un script en Python se utiliza?
¿Cuál es la líneaPython comentario encabezado fuente
#!/usr/bin/env python
en la primera línea de un script en Python se utiliza?
En UNIX y Linux esto indica qué binario para su uso como un intérprete (véase también Wiki page). Por ejemplo, el script de shell se interpreta por /bin/sh
.
#!/bin/sh
Ahora con pitón Es un poco complicado, porque no se puede suponer que está instalado el binario, ni que quiera usar. Por lo tanto, el truco /usr/bin/env
. Se usa el binario de python que sea el primero en el $PATH
. Puede verificar que ejecutando which python
Con la línea del intérprete, puede ejecutar el guión modificándolo a ejecutable. Y solo ejecutarlo. Así, con la escritura comienza con
#!/usr/bin/env python
estos dos métodos son equivalentes:
$ python script.py
y (suponiendo que antes se ha hecho chmod +x script.py
)
$ ./script.py
Esto es útil para creando scripts de todo el sistema.
cp yourCmd.py /usr/local/bin/yourCmd
chmod a+rx /usr/local/bin/yourCmd
Y luego se llama a él desde cualquier lugar simplemente con
yourCmd
En UNIX y sistemas operativos similares, esta línea indica qué intérprete se utilizará si se ejecuta el archivo.
Esto se llama una línea shebang: "! #"
En informática, un tinglado (también llamado Hashbang, hashpling o explosión libra) se refiere a los caracteres cuando son los dos primeros caracteres en un archivo de texto. Los sistemas operativos tipo Unix toman la presencia de estos dos caracteres como una indicación de que el archivo es un script, y tratan de ejecutar ese script usando el intérprete especificado por el resto de la primera línea del archivo. Por ejemplo, los guiones de shell para el shell Bourne comienzan con la primera línea:
Por ejemplo, los guiones de shell para el shell Bourne comienzan con la primera línea: link | ofensivo? – Dan
... '#!/Bin/bash'. –
'/ usr/bin/env python' busca $ PATH para python y lo ejecuta.
Por lo general env se utiliza para establecer algunas variables de entorno para un programa
Lo esa línea hace es decirle a la computadora qué hacer con ese archivo, si lo único que intenta ejecutar el archivo sin especificar un intérprete .. more detail
Como dijo Andri.En Windows, el ejecutable para ejecutar un archivo con al ejecutarlo desde la línea de comandos se basa en una asociación:
16:12:40.68 C:\>assoc .py
.py=Python.File
16:13:53.45 C:\>assoc Python.File
Python.File=Python File
16:14:01.70 C:\>ftype Python.File
Python.File="C:\Python30\python.exe" "%1" %*
En Unix, el intérprete shell hace la inferencia abriendo el archivo y ver si hay un comando denominado en el archivo.
Siempre es útil para esos días que trabajo en una caja de windoze. –
Solo una nota, esta línea no es más que un comentario para el intérprete en Windows.
tampoco es más que un comentario para el intérprete en Unix – hop
-1: Olvidé el material de referencia: http://en.wikipedia.org/wiki/Shebang_(Unix) –
para no confundir con http://en.wikipedia.org/wiki/She_Bangs –
Pete .. . Usted acaba de hacer mi día. –