web-dev-qa-db-fra.com

python: Puis-je exécuter un script Python sans installer Python?

J'ai écrit quelques fichiers .py que je veux exécuter sur une machine différente. Python n'est pas installé sur la machine cible et je ne peux pas l'installer par stratégie. Ce que je peux faire est de copier des fichiers, d'exécuter mes affaires, puis de les supprimer.

Ce que j’ai essayé, c’est de placer mon dossier de développement python sur la machine cible et de cd vers le dossier python et d’exécuter python.exe /path/to/.py/file. Cela m'a donné une erreur en disant que python.dll n'était pas enregistré. Si j'ai enregistré la DLL, cela va probablement me déplacer loin au-delà de la ligne "politique violant".

Est-ce que je peux quand même exécuter des fichiers Python sur une machine sur laquelle python n'est pas réellement installé (essayer de faire fonctionner py2exe maintenant, mais c'est pénible)?

26
ccwhite1

J'ai décidé d'aller avec cx_Freeze

Il a créé une distribution que j'ai pu copier et déplacer simplement vers la machine cible. En outre, il était beaucoup plus facile à utiliser que py2exe; De plus, il semble qu'il soit toujours {en cours de maintenance} (à la date du 10 mars 2011), alors que le développement de py2exe ne semble pas aussi actif.

14
ccwhite1

Edit: Le développement de Portable Python est arrêté. Je vais supprimer cette réponse sous peu.

Départ Portable Python . Cela devrait faire ce dont vous avez besoin.

Les versions actuelles (à compter d'avril 2015) sont 2.7.6 et 3.2.5.

7
Tim Pietzcker

Départ PyInstaller . Il est plus facile de travailler avec py2exe (du moins pour les applications simples).

4
nitrogenycs

WinPython pourrait être ce dont vous avez besoin. Il doit être décompressé à l'aide d'un programme d'installation, mais les fichiers décompressés peuvent être exécutés tels quels sur n'importe quel ordinateur sans aucune installation.

Depuis octobre 2015, il est activement maintenu.

0
Frank

Il semble que virtualenv ne vous laisse pas facilement déplacer le dossier d’environnement virtuel créé. 

Vérifiez virtualenv User Guide . Donc, déplacer le dossier ailleurs peut ne pas fonctionner. Avez-vous essayé l’option Relocate avec virtualenv?

0
Alexis MARTIN

C'est une vieille question, mais une alternative consiste à créer un environnement virtuel pour Python, qui peut être aussi simple que python -m venv myenvname (Python 3.4). Vous pouvez "installer" des paquets de la manière habituelle (par exemple, pip) sans avoir besoin de rien d'autre. Vous allez vous retrouver avec un dossier que vous pouvez déplacer/supprimer à votre guise.

0
TheGerm