2010-03-24 14 views
6

Finora per eseguire un programma Python, sto usandomodi per eseguire python

> python file.py 

voglio eseguire lo script Python semplicemente usando il nome del file, come

> file.py 

simile agli script di shell come

> sh file.sh 
> chmod +x file.sh 
> ./file.sh 

o spostare file.sh a bin e quindi eseguire

> file.sh 
+0

grazie guyz ... è chiaro ora. –

risposta

17

mettere questo nella parte superiore dello script Python:

#!/usr/bin/env python 

Il #! parte è denominata shebang e il comando env individuerà semplicemente python sul $PATH ed eseguirà lo script attraverso di esso. È anche possibile codificare il percorso dell'interprete Python, ma chiamare /usr/bin/env è un po 'più flessibile. (Ad esempio, se stai usando virtualenv, l'interprete python si trova sul tuo $PATH.)

+6

* e * è necessario impostare il bit eseguibile: 'chmod u + x file.py' ... – Boldewyn

+0

È anche possibile scegliere come target versioni specifiche con" #!/Usr/bin/env python2.6 "o" #!/Usr/bin/env python3.0 "che potrebbe essere una buona idea dato lo split 2.6+ e 3.0+. –

2

Puoi anche indirizzare la posizione specifica dell'interprete python che vuoi usare, se devi specificarlo (es. , si sta utilizzando versioni differenti) basta aggiungere alla linea shebang (quella a partire dal numero!) il percorso completo dell'interprete si wan per utilizzare, ad esempio

#!/home/user/python2.6/bin/python 

Ma, in generale, è meglio solo per prendere il valore predefinito usando /usr/bin/env, come dice Mike, poiché non è necessario fare affidamento su un particolare percorso.

Problemi correlati