2016-12-12 2 views
0

Je suis assez nouveau sur Python et j'ai besoin d'aide avec un message d'erreur que je reçois. J'essaie de créer un fichier exe à partir d'un script tkinter à l'aide de py2exe, mais je reçois toujours une erreur AssertionError chaque fois que j'essaie d'exécuter le script setup.py. J'ai déjà créé un fichier exe sur mon ordinateur il y a seulement quelques jours sur le même script sans utiliser tkinter. Créer ce fichier exe n'était pas un problème. Je me demande si le message d'erreur se produit en raison du fait que j'ai déjà créé un fichier exe récemment.AssertionError lors de l'utilisation de py2exe

Mon script setup.py semble normal:

`# setup.py 


from distutils.core import setup 
import py2exe 
setup(console=['MyScript.py'])` 

Chaque fois que je le lance, je reçois cette erreur:

AssertionError: distutils has already been patched by <class 'py2exe.patch_distutils.patch_distutils.<locals>.Distribution'>

Le retraçage ensemble ressemble à ceci:

Traceback (most recent call last): 
File "C:\Dir\JetBrains\PyCharm Community Edition 2016.2.3\helpers\pycharm\pycharm_setup_runner.py", line 26, in <module> 
exec (fh.read(), globals(), locals()) 
File "<string>", line 6, in <module> 
File "C:\Dir\Python3\lib\distutils\core.py", line 134, in setup 
ok = dist.parse_command_line() 
File "C:\Dir\Python3\lib\distutils\dist.py", line 471, in parse_command_line 
args = self._parse_command_opts(parser, args) 
File "C:\Dir\Python3\lib\distutils\dist.py", line 527, in _parse_command_opts 
cmd_class = self.get_command_class(command) 
File "C:\Dir\Python3\lib\distutils\dist.py", line 817, in get_command_class 
__import__ (module_name) 
File "C:\Program Files (x86)\JetBrains\PyCharm Community Edition 2016.2.3\helpers\pycharm\pycharm_commands\pycharm_test.py", line 4, in <module> 
from setuptools.command import test 
File "C:\Dir\Python3\lib\site-packages\setuptools\__init__.py", line 14, in <module> 
from setuptools.extension import Extension 
File "C:\Dir\Python3\lib\site-packages\setuptools\extension.py", line 10, in <module> 
from .dist import _get_unpatched 
File "C:\Dir\Python3\lib\site-packages\setuptools\dist.py", line 39, in <module> 
_Distribution = _get_unpatched(_Distribution) 
File "C:\Dir\Python3\lib\site-packages\setuptools\dist.py", line 35, in _get_unpatched 
"distutils has already been patched by %r" % cls 
AssertionError: distutils has already been patched by <class'py2exe.patch_distutils.patch_distutils.<locals>.Distribution'> 

Est-ce que quelqu'un sait une solution de contournement à ce problème? Je travaille dans Python3.4.1.

Merci beaucoup d'avoir aidé! Essayez d'importer setuptools avant d'importer py2exe.

Répondre

0

Cela a fonctionné pour moi.