2010-03-24 3 views
6

Jusqu'à présent, pour exécuter un programme Python, j'utilisefaçons d'exécuter python

> python file.py 

Je veux exécuter le script Python simplement en utilisant le nom de fichier, comme

> file.py 

similaires aux scripts shell comme

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

ou déplacer file.sh bin puis exécutez

> file.sh 
+0

merci guyz .. c'est clair maintenant. –

Répondre

17

Mettre ce en haut de votre script Python:

#!/usr/bin/env python 

Le #! partie est appelée shebang, et la commande env va simplement localiser python sur votre $PATH et exécuter le script à travers elle. Vous pouvez aussi coder en dur le chemin de l'interpréteur python, mais appeler /usr/bin/env est un peu plus flexible. (Par exemple, si vous utilisez virtualenv, cet interpréteur python se trouve sur votre $PATH.)

+6

* et * vous devez définir le bit exécutable: 'chmod u + x file.py' ... – Boldewyn

+0

Vous pouvez également cibler des versions spécifiques avec" #!/Usr/bin/env python2.6 "ou" #!/Usr/bin/env python3.0 "ce qui pourrait être une bonne idée compte tenu de la division 2.6+ et 3.0+. –

2

Vous pouvez également cibler l'emplacement spécifique de l'interpréteur python que vous souhaitez utiliser, si vous devez le spécifier (par ex. , vous utilisez des versions différentes) Il suffit d'ajouter à la ligne de tralala (celui commençant par #!) le chemin complet de l'interprète vous wan à utiliser, par exemple

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

Mais, en général, est mieux juste pour prendre la valeur par défaut en utilisant /usr/bin/env, comme le dit Mike, car vous ne devez pas compter sur un chemin particulier.