Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Py2Exe和Easgui_Python_Module_Py2exe_Easygui - Fatal编程技术网

Python Py2Exe和Easgui

Python Py2Exe和Easgui,python,module,py2exe,easygui,Python,Module,Py2exe,Easygui,我正在尝试将py文件转换为exe。 这是我的设置文件的代码 from distutils.core import setup import py2exe setup(console=["mycode.py"]) 当我使用cmd时,它会说: 导入错误:没有名为easygui的模块 如何让py2exe知道easygui?以及numpy和mathplotlib(都在mycode.py中使用)首先,使用。它更新更好(尽管在切换到pyinstaller之前我一直使用py2exe),而且它似乎有更好的方法

我正在尝试将py文件转换为exe。 这是我的设置文件的代码

from distutils.core import setup
import py2exe
setup(console=["mycode.py"])
当我使用cmd时,它会说: 导入错误:没有名为easygui的模块

如何让py2exe知道easygui?以及numpy和mathplotlib(都在mycode.py中使用)

首先,使用。它更新更好(尽管在切换到pyinstaller之前我一直使用py2exe),而且它似乎有更好的方法来查找包含的lib

但是对于py2exe,您需要进一步扩展setup.py以告诉它要包含什么(因为它们可能是隐藏的导入)

如果构建失败,则PYTHONPATH中的
easygui
不正确。确保在脚本中没有执行特殊操作来添加pythonpath,因为py2exe不会看到它

对于numpy和matplotlib,您可能需要对该文件做更多的工作。请参见

首先,使用。它更新更好(尽管在切换到pyinstaller之前我一直使用py2exe),而且它似乎有更好的方法来查找包含的lib

但是对于py2exe,您需要进一步扩展setup.py以告诉它要包含什么(因为它们可能是隐藏的导入)

如果构建失败,则PYTHONPATH中的
easygui
不正确。确保在脚本中没有执行特殊操作来添加pythonpath,因为py2exe不会看到它


对于numpy和matplotlib,您可能需要对该文件做更多的工作。请参见

关于所提到的特定dll的问题,我有类似的问题,但通过特别排除设置中的问题来修复这些问题,因此:

setup(
    console=['DET14.py'],
    options={
             'py2exe': {
                        'packages' : ['matplotlib', 'pytz'],
                        'dll_excludes':['MSVCP90.DLL',
                                        'libgdk-win32-2.0-0.dll',
                                        'libgobject-2.0-0.dll',
                                        'libgdk_pixbuf-2.0-0.dll'],
                        'includes':['scipy.sparse.csgraph._validation',
                            'scipy.special._ufuncs_cxx']
                       }
            },
    data_files=matplotlib.get_py2exe_datafiles()
)`

我想说,尝试将该排除添加到设置语句中

相对于前面提到的特定dll的问题,我也有类似的问题,但通过特别排除设置中的问题,修复了这些问题,因此:

setup(
    console=['DET14.py'],
    options={
             'py2exe': {
                        'packages' : ['matplotlib', 'pytz'],
                        'dll_excludes':['MSVCP90.DLL',
                                        'libgdk-win32-2.0-0.dll',
                                        'libgobject-2.0-0.dll',
                                        'libgdk_pixbuf-2.0-0.dll'],
                        'includes':['scipy.sparse.csgraph._validation',
                            'scipy.special._ufuncs_cxx']
                       }
            },
    data_files=matplotlib.get_py2exe_datafiles()
)`

我想说,尝试将该排除添加到设置语句中

当您运行生成的exe时,它是否会因导入错误而失败?或者py2exe生成过程是否会失败?它甚至不会创建exe?当您运行生成的exe时,它是否会因导入错误而失败?或者py2exe生成过程是否会失败?它甚至不会创建exe谢谢您的帮助,我现在有一个新错误,它现在创建了dist文件,实际上似乎在识别easygui和matplot库,但是,当查找dll时,会出现以下情况:查找需要的dll错误:ligbk-win32-2.0-0.dll:没有这样的文件或目录我下载了该dll,现在再次使用cmd时,它会显示我现在需要libgobject-2.0-0.dllDepending在您使用的库上可能要添加多个DLL。这是给numpy的还是给matplot的?你有没有遵循wiki上的模块?是的,我从那里下载了numpy和mathplotlib,我可以继续单独下载dll文件?那么,你需要的任何dll文件都应该已经在你的系统上安装好了。问题是py2exe需要知道它们在哪里。我没有多少windows打包numpy或matplotlib的经验,但我强烈建议您尝试pyinstaller。它至少应该更努力地让它开箱即用。谢谢你的帮助,我现在有一个新的错误,它现在创建了dist文件,实际上似乎正在识别easygui和matplot库,但是,当查找dll时,会出现以下情况:查找需要的dll错误:ligbk-win32-2.0-0.dll:没有这样的文件或目录我下载了该dll,现在再次使用cmd时,它会显示我现在需要libgobject-2.0-0.dllDepending在您使用的库上可能要添加多个DLL。这是给numpy的还是给matplot的?你有没有遵循wiki上的模块?是的,我从那里下载了numpy和mathplotlib,我可以继续单独下载dll文件?那么,你需要的任何dll文件都应该已经在你的系统上安装好了。问题是py2exe需要知道它们在哪里。我没有多少windows打包numpy或matplotlib的经验,但我强烈建议您尝试pyinstaller。它至少应该更努力地让它开箱即用。