Py2exe错误:[Errno 2] 没有这个文件或目录。

6
C:\Users\Shalia\Desktop\accuadmin>python setup_py2exe.py py2exe
running py2exe

  10 missing Modules
  ------------------
? PIL._imagingagg                     imported from PIL.ImageDraw
? PyQt4                               imported from PIL.ImageQt
? PyQt5                               imported from PIL.ImageQt
? PySide                              imported from PIL.ImageQt
? _imaging_gif                        imported from PIL.GifImagePlugin
? _util                               imported from PIL.ImageCms
? cffi                                imported from PIL.Image, PIL.PyAccess
? enchant                             imported from guess_language
? readline                            imported from cmd, code, pdb
? tkinter                             imported from PIL.ImageTk, __SCRIPT__
Building 'dist\AccuAdmin.exe'.
error: [Errno 2] No such file or directory: 'C:\\Users\\Shalia\\AppData\\Local\\
Programs\\Python\\Python35-32\\lib\\site-packages\\py2exe\\run-py3.5-win32.exe'

因此,我试图聪明地走这条路,将run-py3.4-win32.exe重命名为run-py3.4-win32.exe,这样做可以工作,但现在我遇到了一个单独的错误。

C:\Users\Shalia\Desktop\accuadmin>python setup_py2exe.py py2exe
running py2exe

  10 missing Modules
  ------------------
? PIL._imagingagg                     imported from PIL.ImageDraw
? PyQt4                               imported from PIL.ImageQt
? PyQt5                               imported from PIL.ImageQt
? PySide                              imported from PIL.ImageQt
? _imaging_gif                        imported from PIL.GifImagePlugin
? _util                               imported from PIL.ImageCms
? cffi                                imported from PIL.Image, PIL.PyAccess
? enchant                             imported from guess_language
? readline                            imported from cmd, code, pdb
? tkinter                             imported from PIL.ImageTk, __SCRIPT__
Building 'dist\AccuAdmin.exe'.
Building shared code archive 'dist\library.zip'.
Traceback (most recent call last):
  File "setup_py2exe.py", line 14, in <module>
    "optimize": 2,
  File "C:\Users\Shalia\AppData\Local\Programs\Python\Python35-32\lib\distutils\
core.py", line 148, in setup
    dist.run_commands()
  File "C:\Users\Shalia\AppData\Local\Programs\Python\Python35-32\lib\distutils\
dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "C:\Users\Shalia\AppData\Local\Programs\Python\Python35-32\lib\distutils\
dist.py", line 974, in run_command
    cmd_obj.run()
  File "C:\Users\Shalia\AppData\Local\Programs\Python\Python35-32\lib\site-packa
ges\py2exe\distutils_buildexe.py", line 188, in run
    self._run()
  File "C:\Users\Shalia\AppData\Local\Programs\Python\Python35-32\lib\site-packa
ges\py2exe\distutils_buildexe.py", line 268, in _run
    builder.build()
  File "C:\Users\Shalia\AppData\Local\Programs\Python\Python35-32\lib\site-packa
ges\py2exe\runtime.py", line 261, in build
    self.build_archive(libpath, delete_existing_resources=True)
  File "C:\Users\Shalia\AppData\Local\Programs\Python\Python35-32\lib\site-packa
ges\py2exe\runtime.py", line 426, in build_archive
    assert mod.__file__.endswith(EXTENSION_SUFFIXES[0])
AssertionError

有人能指导如何解决这个问题吗?Py2exe应该适用于所有版本的Python,所以我不确定出了什么问题。我真的不想卸载Python3.5来安装Python3.4。谢谢。

1个回答

3
一种方法是使用Python 3.4。另一个解决方案是进入Python目录,例如我的情况是C:\Program Files\Python35,然后进入Lib目录,再进入site-packages目录(如果你使用pip安装了Py2Exe)。然后,将run-py3.4-win32.exe文件复制到另一个目录。将该文件重命名为run-py3.5-win32.exe。将其复制回py2exe目录。对于大多数程序,这样做应该可以正常工作。
如果这不起作用,请安装Python 3.4,并通过键入py -3.4 setup_py2exe.py py2exe来运行设置脚本。

和原帖作者一样,我也遇到了同样的错误,尝试了两个建议。第一个没有起作用,第二个生成了一个“exe”文件,但仍然报错。 - Apollys supports Monica
尝试卸载并重新安装py2exe,或者其他简单的操作。 - E.T.
此外,安装py 3.4中所有缺失的模块。 - E.T.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接