web-dev-qa-db-fra.com

Comment changer la version de python pour l'utiliser avec pyinstaller

J'essaye de convertir un fichier .py en exe. Mon fichier, hello.py, se lit comme suit:

print "Hello, World!"

J'essaie actuellement d'utiliser pyinstaller. Cependant, quand je lance la commande

pyinstaller hello.py

Je reçois le message d'erreur «Index de tuple hors de portée», ce qui signifie que ma version de python n'est pas prise en charge. En particulier, il semblerait que pyinstaller pense que j'essaie de compiler le code Python 3.6 dans un exe. Mais j'ai installé python 2.7 et python 3.6. Comment puis-je lui faire savoir que je veux qu'il considère le code comme du code Python 2.7?

5
Kyle Sargent

Utiliser Python3 :

Assurez-vous que PyInstaller est installé dans Python 3.x: pip3 freeze

PyInstaller == 3.3.1

Puis en exécutant la commande:

/path/to/python3 -m PyInstaller your_script.py
8
codekaizer

En supposant que vous avez python 2.x sur le chemin sous python2, vous pouvez le faire 

    python2 -m pyinstaller hello.py
1
matusko

Si vous désinstallez python3, cela fonctionne avec python2. Si python3 est installé (et qu’il s’agit du primaire) et que pyinstaller est installé dans python3, cela ne fonctionnera pas. (pyinstaller python3 utilisé). Si vous avez installé python3 mais que vous ne l'avez pas déjà installé dans python3 ou que vous ne l'avez pas désinstallé (désinstallateur pip3 de py3), pyinstaller fonctionne.

Vérification des variables d’environnement (Windows 10) PATH avait d’abord python3. Cela peut être le problème et peut ne pas être résolu car il vérifie d’abord les répertoires python3 et choisit pyinstaller pour python3. pyinstaller ne vérifie pas non plus le fichier (#!/usr/env/bin python2).

À moins que pyinstaller ne mette une option relative à ce problème, il n’ya peut-être pas de solution à moins de désinstaller temporairement pyinstaller de python3. 

note pourrait également utiliser py2exe, en utilisant py2exe pour python2, pyinstaller pour python3

0
oldlodestone

Commencez par installer Pyinstaller dans votre version de python2.7 si elle n’a pas été installée précédemment py -2 -m pip install pyinstaller

puis allez dans votre dossier et 

py -2 -m pyinstaller -F filename.py
0
Rajesh Kumar Sahoo