Compilation De Python

Comment puis-je compiler et exécuter un fichier python (extension*. py)?

44
demandé sur system PAUSE 2009-09-16 20:42:51

8 réponses

python yourfile.py

Vous devez d'abord installer python. Il compilera automatiquement votre fichier dans un .PYC binaire, puis exécutez-le pour vous. Il sera automatiquement recompiler chaque fois que votre fichier change.

Http://www.python.org/download/

28
répondu Paul McMillan 2009-09-16 16:44:03

Python compile ses fichiers en bytecode avant de les exécuter. Cela signifie que vous devez avoir un interpréteur Python installé sur la machine cible.

Si vous ne voulez pas installer Python sur la machine cible, utilisez py2exe, py2app {[4] } ou quelque chose de similaire.

15
répondu Georg Schölly 2009-09-16 16:48:05

Si vous voulez simplement compiler des sources, sans les exécuter, vous pouvez le faire

compileall.py <directory>

Cette commande compilera le code python dans ce répertoire récursivement

Compileall script est généralement situé dans le répertoire comme

/usr/local/lib/python2.6

C'est-à-dire <prefix>/lib/python2.6 (ou similaire, selon les préfixes, définissez une configuration python)

Comme Lulu suggère, vous devez vous assurer que résultant .pyc et .les fichiers pyo sont exécutables par les utilisateurs qui vous intéressent Au sujet.

Compileall peut également être utilisé comme un module

import compileall
compileall.compile_dir(path)
11
répondu Evgeny 2009-10-07 01:36:37

Python est un langage interprété, donc vous n'avez pas besoin de le compiler; juste pour l'exécuter. Comme il arrive, la version standard de python compilera ceci en "bytecode", tout comme Java etc. n', et d'enregistrer (dans .pyc files) et exécutez-le la prochaine fois, en économisant du temps, si vous n'avez pas mis à jour le fichier depuis. Si vous avez mis à jour le fichier, il sera recompilé automatiquement.

Vous pouvez également exécuter python avec un drapeau-O, qui va générer .fichiers pyo au lieu de .pyc. Je n'en suis pas sûr fait beaucoup de différence. Si la vitesse est importante, utilisez psyco.

Et oui, sous Unix (y compris Linux, BSD et Mac OS X, ou dans un shell unix sous windows), vous pouvez utiliser une ligne shebang en haut du fichier pour que le fichier s'exécute automatiquement en utilisant python. Sous windows, l'équivalent est d'associer des fichiers .py avec python.exe, puis assurez-vous que votre variable D'environnement PATHEXT inclut des extensions ".PY".

Cependant, pour windows, vous voudrez probablement écrire un programme gui en python (éventuellement en utilisant PyQT4 et ERIC4) qui a un .fichier pyw comme son script principal, et A.pyw associé à pythonw (qui vient avec Python sous windows). Cela vous permettra d'exécuter des scripts python sur windows comme les autres programmes GUI. Pour la publication et la distribution, vous voulez probablement compiler dans un fichier exécutable en utilisant quelque chose comme py2exe, comme d'autres l'ont mentionné.

8
répondu Lee B 2009-09-16 17:44:59

Pour ajouter à la réponse de Paul McMillan , Si vous êtes sous Windows et que vous avez installé Python, tous les fichiers se terminant par l'extension". py " doivent être associés à l'exécutable python, vous permettant de l'exécuter comme suit:

> myfile.py

Sous *nix, vous pouvez commencer le fichier avec #!/usr/bin/python et l'exécuter comme suit:

$ ./myfile.py

Dans les systèmes *nix, si les deux premiers caractères d'un fichier sont #!, puis il exécute le fichier avec l'exécutable spécifié, que j'ai mis ici pour être /usr/bin/python.

5
répondu geowa4 2017-05-23 12:07:19

Si vous voulez transformer un fichier source python en un .exe double-cliquable sous windows, vous pouvez utiliser py2exe , ce qui peut vous aider à créer un paquet facile à distribuer.

3
répondu SingleNegationElimination 2009-09-16 17:09:32

Sur la plupart des systèmes de type Unix, vous pouvez utiliser le shebang pour indiquer au système d'exploitation quel interpréteur doit être appelé. Vous mettez simplement

#!/path/to/python 

, Dans la première ligne de votre fichier, où bien sûr, vous devez remplacer "/chemin/vers/" avec le chemin que vous avez sur votre système. Dans la plupart des cas, ce serait "/usr/bin/python" ou "/usr/local/bin/python". Sur les systèmes unix, vous pouvez également rechercher le chemin avec

"#!usr/bin/env python" 

Ou appelez la commande

which python

Pour trouver le chemin. Vous pouvez ensuite exécuter votre programme avec la commande

./yourprogram.py

S'il vous dit que vous n'avez pas la permission de le faire, vous devez utiliser la commande

chmod a+x yourprogram.py
1
répondu Lucas 2009-09-16 17:13:08

Réponse pour Windows

  1. vous devez d'abord installer python
  2. puis définissez la variable path
  3. Après cela, écrivez votre programme python et enregistrez
  4. pensez qu'il existe un programme python qui s'appelle " hello.py "
  5. ouvrez cmd.exe
  6. , puis allez dans le chemin que vous avez enregistré votre "hello.py" fichier,
  7. , puis tapez python hello.py et appuyez sur la touche entrer clé.

Maintenant, le code python est automatiquement compilé et affiché résultat.

0
répondu ashanrupasinghe 2013-11-13 07:26:36